我試圖連續運行一個線程,而不是被tcl主事件循環阻塞。 這裏是什麼,我試圖做一個簡單的例子:防止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
在這段代碼中,infinite_loop
PROC被稱爲與主事件循環無限運行。我想如果a_thread
仍然可以在後臺運行。我怎樣才能做到這一點?
謝謝,Tcl wiki的例子似乎忽略了這種情況。 – elmt 2010-11-19 14:07:49