TCL: bidirektionale Kommunikation zwischen Threads in Windows

Ich brauche eine bidirektionale Kommunikation zwischen Threads in Tcl und alles, was ich bekommen kann, ist eine Möglichkeit, bei der Parameter als mein einziger Master-> Helfer-Kommunikationskanal übergeben werden. Folgendes habe ich:

proc ExecProgram { command } {
    if { [catch {open "| $command" RDWR} fd ] } {
        #
        # Failed, return error indication
        #
        error "$fd"
    }
}

Um das tclsh83 aufzurufen, zum Beispiel ExecProgram "tclsh83 testCases.tcl TestCase_01"

In der Datei testCases.tcl kann ich die übergebenen Informationen verwenden. Beispielsweise

set myTestCase [lindex $argv 0] 

Within testCases.tcl Ich kann die Pipe löschen:

puts "$myTestCase"
flush stdout

Und erhalten, dass innerhalb des Master-Threads unter Verwendung der Prozess-ID versetzt:

gets $app line

... innerhalb einer Schleife.

as nicht sehr gut ist. Und nicht in beide Richtungen.

ennt jemand eine einfache 2-Wege-Kommunikationsmethode für tcl unter Windows zwischen 2 Thread

Antworten auf die Frage(1)

Ihre Antwort auf die Frage