Salve,
volevo provare a iniziare un thread all'interno di uno script. Lo scopo del thread è quello di incrementare ogni secondo il valore della stringa di 1 e aggiornare il suddetto dato in una text label in una finestra creata con Tk:
Tuttavia, il valore viene aggiornato solo la prima volta...codice:#!/wperl use strict; use warnings; use Tkx; use threads; use threads::shared; my $k : shared = 0; my $mw = Tkx::widget->new("."); $mw->g_wm_title('Hello World!'); $mw->g_wm_geometry("400x250-5+5"); my $mf = $mw->new_ttk__frame(); $mf->g_grid(); my $la = $mf->new_ttk__label(-textvariable => \$k); $la->g_grid(); my $thr = threads->new(\&_sub1); $thr->detach(); Tkx::MainLoop(); sub _sub1 { while(1) { $k = $k + 1; sleep 1; } } __END__;
Non saprei dove sbaglio



Rispondi quotando