send.ahk writes strings to STDOUT every 1 second
receive.ahk reads strings from STDIN as soon as they arrive and then writes them to STDOUT
Then I pipe everything together to get the output in the same console, like this:
AutoHotkeyU32.exe send.ahk | AutoHotkeyU32.exe receive.ahk | more
send.ahk
Code: Select all
STDOUT := FileOpen("*", "w")
loop 10 {
msg := "Hello " a_index
STDOUT.WriteUInt(strlen(msg))
STDOUT.Write(msg)
STDOUT.Read(0) ;force buffer flush
sleep 1000
}
Code: Select all
STDIN := FileOpen("*", "r")
STDOUT := FileOpen("*", "w")
loop 50 {
msgLen := STDIN.ReadUInt()
STDOUT.Write( STDIN.Read(msgLen) "`n" )
STDOUT.Read(0) ;force buffer flush
}
Code: Select all
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 6
Hello 7
Hello 8
Hello 9
Hello 10
Code: Select all
Hello 1
Hello 1
Hello 2
Hello 1
Hello 2
Hello 3
Hello 1
Hello 2
Hello 3
Hello 4
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 6
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 6
Hello 7
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 6
Hello 7
Hello 8
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 6
Hello 7
Hello 8
Hello 9
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Anybody knows what's causing this strange behavior?
I'm using AHK 1.1.24.02 under Windows Vista x86