スレッドを連続して実行しようとしていて、tclメインイベントループによってブロックされないようにしようとしています。 infinite_loop
PROCが呼び出され、メインイベントループが無限に実行され、このコードでメインイベントループによってtclスレッドがブロックされないようにします。
#!/bin/sh
#\
exec tclsh "$0" "[email protected]"
package require Thread
set ::a_thread [thread::create {thread::wait}]
proc start_a {} {
thread::send $::a_thread {
puts "Running a thread"
}
after 1000 a_start
}
proc infinite_loop {} {
while {1} {
puts "Loop"
after 500
}
}
start_a
infinite_loop
vwait forever
: は、ここで私は何をしようとしているの簡単な例です。私はa_thread
まだバックグラウンドで実行することができますが好きです。どうすればこれを達成できますか?
ありがとうございました、Tclウィキの例は、このような状況を見逃していたようです。 – elmt