TCP stream hangs?
BlitzMax Forums/BlitzMax Beginners Area/TCP stream hangs?
| ||
Hello, I am opening a stream to a tcp address/port, this way : box_socket = CreateTCPSocket() box_TCP=CreateSocketStream(box_socket) ConnectSocket(box_socket,HostIp("192.168.1.77"),777) Then I writebyte to it each frame, sharing the state of my app with the remote box... but whenever I reach approx. 8000 bytes written to it, bmax is throwing a "error writing to stream". The only way to avoid it is to recreate the stream from zero (freeing it before off course). Should I create the stream each frame and close it after having writen to it? All I want is a simple way of sending TCP messages to a remote LAN box. Thanks for your help. |
| ||
I had a similar problem with Blitz3D, the way i fixed it was indeed opening and closing the stream every time i wanted to send information. I would suggest not sending data every frame tho, you will still experience some lag because of the cued packets... Insted try sending ever second, this is how i created an internet and lan playable racing game... Hope that helps. Ian |
| ||
Does it happen if define box_socket as TSocket and box_TCP as TSocketstream? I used the code here for 21mb files (it doesn't use writebyte but is a lot quicker). |
| ||
Hello, thanks for the suggestions Icecap: my app is running at 20 fps, and I need this speed, which should not be a problem since it consumes far less bandwidth than available on a lan. I tried with opening/closing the stream but this doesn't seem to make any difference. tonyg: box_socket is defined as a tsocket and box_TCP as a tstream (as globals) before the actual initialisation. |
| ||
And adding, that this doesn't happen with blitz3D version of the same app, so network and receiving box are not part of the problem ... |
| ||
... and my code from that link didn't work either? |
| ||
It didn't work either ... but I found that enabling the windows xp firewall solved the problem. |