The ThreadServer can be used to easily create a multithreaded server where each thread polls multiple connections. To use it, at a minimum you must override or rebind clientConnected, readClientMessage, and clientMessage and you must define your Client and Message.
Constructor
Variables
maxBufferSize:Int
Maximum size of buffered data read from a socket. An exception is thrown if the buffer exceeds this value.
Methods
dynamicafterEvent():Void
Called after a client connects, disconnects, a message is received, or an update is performed.
dynamicclientDisconnected(c:Client):Void
Called when a client disconnects or an error forces the connection to close.
dynamicclientMessage(c:Client, msg:Message):Void
Called when a message has been recieved. Message handling code should go here.
dynamicreadClientMessage(c:Client, buf:Bytes, pos:Int, len:Int):{msg:Message, bytes:Int}
Called when data has been read from a socket. This method should try to extract a message from the buffer. The available data resides in buf, starts at pos, and is len bytes wide. Return the new message and the number of bytes read from the buffer. If no message could be read, return null.