[SP-pm] horario corrente usando threads?

Geraldo Netto geraldonetto at gmail.com
Fri Mar 26 10:24:18 PDT 2010


ahahah :)

eu não conhecia nenhuma versão humana do perl critic
até o Mantovani achar o meu $version perdido
eu acho que foi um typo meu, no copy e paste...
mas eu prometo que eu melhoro nas proximas versões :)

Geraldo
Non dvcor, dvco => Sapere Aude
São Paulo, Brasil, -3gmt
site: http://exdev.sf.net/
github: http://github.com/geraldonetto
msn: geraldo_boca em hotmail.com
skype: geraldo-netto
icq: 145-061-456

2010/3/26 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
> 2010/3/26 Geraldo Netto <geraldonetto em gmail.com>:
>> Opa!
>>
>> Interessante Solli,
>> na realidade, eu me considero newbie, principalmente em perl, eheheh :P
>> eu também gostei da ideia do loop...
>>
>> btw, por hora eu tenho isso:
>>
>> #!/usr/bin/perl
>> #use warnings;
>> #use strict;
>> use Audio::Mixer;
>> use DateTime;
>> use Tk;
>>
>> my $dt = DateTime->now;
>> my $dth = $dt->hour;
>> my $dtm = $dt->minute;
>> my $dts = $dt->second;
>>
>> # volume increment (+ to increase, - to decrease)
>> my $increment = -10;
>>
>> # time step
>> my $step = 10;
>>
>> my $v = 50;
>> my $volume = Audio::Mixer::get_cval( 'vol' );
>>
>> my $mw = MainWindow->new;
>> $mw->title('Sound Minimiser');
>> my $lbltitle = $mw->Label(-text=>'Sound Minimiser
>> '.$version)->pack(-anchor=>'w');
>
> Por favor, me diga o motivo de você ter usado essa variável $version,
> e me diga por gentileza o dado contido.
>
>> my $lblcurtime = $mw->Label(-text=>'Current Time:
>> '.$dth.':'.$dtm.':'.$dts)->pack(-anchor=>'w');
>> my $lblnewtime = $mw->Label(-text=>'New Time:
>> '.$dth.':'.($dtm+$step).':'.$dts)->pack(-anchor=>'w');
>> my $lblos = $mw->Label(-text=>'Operating System: '.$^O)->pack(-anchor=>'w');
>> my $lblcurvol = $mw->Label(-text=>'Current volume:
>> '.$volume)->pack(-anchor=>'w');
>> my $lblvolinc = $mw->Label(-text=>'Volume increment:')->pack(-anchor=>'w');
>> my $txtvolinc = $mw->Entry(-textvariable=>\$increment)->pack(-anchor=>'e');
>> my $lbltimestp = $mw->Label(-text=>'Time step:')->pack(-anchor=>'w');
>> my $txtstep = $mw->Entry(-textvariable=>\$step)->pack(-anchor=>'e');
>> my $btnexit = $mw->Button(-text=>'Exit',
>> -command=>sub{exit})->pack(-anchor=>'center');
>>
>> MainLoop;
>>
>> if ( Audio::Mixer::set_cval( 'vol', $v, $v ) ) {
>>    die("Can't set volume...");
>> }
>>
>> na pratica só faz 2 coisas: desenhar a gui e colocar o volume em 50%
>> btw, eventualmente se alguem tiver alguma sugestão,
>> elas definitivamente serão bem vindas!
>>
>> ah, uma coisa curiosa,
>> pelos testes que eu fiz, o datetime usa
>> a mesma fonte de informação do hwclock(hardware)
>> e o meu kubuntu 9.10 reporta o horario errado
>> por causa disso...
>> na realidade eu já corrigi o problema forçando
>> a configuração do hwclock no boot, mas por
>> um acaso teria alguma outra forma de usar
>> o datetime(ou qualquer outro modulo) que pegue
>> o horario do software e não o do hardware
>> como faz o hwclock?
>>
>> como sempre, obrigado mesmo!
>>
>> Abraços,
>>
>> Geraldo
>> Non dvcor, dvco => Sapere Aude
>> São Paulo, Brasil, -3gmt
>> site: http://exdev.sf.net/
>> github: http://github.com/geraldonetto
>> msn: geraldo_boca em hotmail.com
>> skype: geraldo-netto
>> icq: 145-061-456
>>
>> 2010/3/26 Solli Honorio <shonorio em gmail.com>:
>>> Não dá para saber se existe uma maneira 'melhor' se eu não sei qual maneira
>>> você está fazendo .... mas sei que vc tem um bom conhecimento de
>>> programação, sabe que isto depende de qual tecnologia vc está utilizando. Se
>>> vc estiver utilizando um processo baseado em evento/schedule (o POE e o
>>> AnyEvent são ótimos exemplos para isto e eu acho que cai bem no que vc está
>>> fazendo), você  terá que criar e gerenciar uma fila de eventos. Se você
>>> tiver utilizando tecnologia de processamento paralelo, então threads e forks
>>> é a maneira. Se vc tiver apenas criando um loop poderá executar a
>>> atualização a cada loop....
>>>
>>> Solli M. Honório
>>>
>>> Em 26 de março de 2010 06:25, Geraldo Netto <geraldonetto em gmail.com>
>>> escreveu:
>>>>
>>>> Pessoal,
>>>>
>>>> eu tava mexendo no 'abaixador de volume temporizado' e
>>>> agora, eu to procurando algum jeito atualizar na tela o horário
>>>> e eu quero saber se existe um jeito melhor ou mais simples
>>>> que lançar uma thread que fica atualizando o horário?
>>>>
>>>> Inté!
>>>>
>>>> Geraldo
>>>> Non dvcor, dvco => Sapere Aude
>>>> São Paulo, Brasil, -3gmt
>>>> site: http://exdev.sf.net/
>>>> github: http://github.com/geraldonetto
>>>> msn: geraldo_boca em hotmail.com
>>>> skype: geraldo-netto
>>>> icq: 145-061-456
>>>> _______________________________________________
>>>> SaoPaulo-pm mailing list
>>>> SaoPaulo-pm em pm.org
>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>
>>>
>>>
>>> --
>>> "o animal satisfeito dorme". - Guimarães Rosa
>>>
>>> _______________________________________________
>>> SaoPaulo-pm mailing list
>>> SaoPaulo-pm em pm.org
>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>
>
>
> --
> "If you’ve never written anything thoughtful, then you’ve never had
> any difficult, important, or interesting thoughts. That’s the secret:
> people who don’t write, are people who don’t think."
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>


More information about the SaoPaulo-pm mailing list