newLISP® v.10.3.4 Development Releaserev 2011-10-05
Version 10.3.4 is a development release with a reworked message interface.
Addtions and changes
- A reworked send, receive message API is multiple times faster
and has consistent performance on different OS platforms. The channel for each
child is now a dual read/write message queue using Unix, local domain sockets
internally. In previous version only one message could be written with send.
Now mutiple message can be placed into a message queue on the same channel and retrieved
on the receiving side with multiple receive statements until returning
nil, when the queue is empty. On the sending side send will return
nil, when the queue is full.
New syntax forms for send and receive let the parent process
filter child PIDs to target only those child processes, which are either ready to
receive or target those from which messages can be be read. The (send) form
allows the parent process to filter all those child PIDs, which are ready to receive
messages sent by the parent. The (receive) form returns a list of child
PIDs ready with messages in their sending queues to be read by the parent process.
Bug fixes
- A longstanding bug for ithe list-mode of net-select has been
fixed. Now, net-select does return socket numbers in the ready
list not 0's (zeros).
Compatibility
This version if fully compatible with the previous stable release version 10.3.3.
∂