我需要在 Tcl 中的线程之间进行两种方式的通信,而我所能得到的只是一种方式,其中参数作为我唯一的 master->helper 通信通道传入。这是我所拥有的:
proc ExecProgram { command } {
if { [catch {open "| $command" RDWR} fd ] } {
#
# Failed, return error indication
#
error "$fd"
}
}
调用 tclsh83,例如 ExecProgram "tclsh83 testCases.tcl TestCase_01"
在 testCases.tcl 文件中,我可以使用传入的信息。例如:
set myTestCase [lindex $argv 0]
在 testCases.tcl 中,我可以输出到管道:
puts "$myTestCase"
flush stdout
并使用进程 ID 接收放入主线程中的内容:
gets $app line
...在一个循环内。
这不是很好。而不是双向的。
任何人都知道 Windows 中 2 个线程之间 tcl 的简单 2 路通信方法吗?