(index ("publish-thread!" 0) ("connect-remote-thread" 307) ("serializer" 967) ("deserializer" 1259))
(def (sig (procedure "(publish-thread! thread . endpoints)" (id publish-thread!))) (p "Publish " (tt "thread") " via " (tt "endpoints") " (a list of " (int-link "zmq") " endpoint strings). For each invocation of " (tt "publish-thread!") " a thread with a message loop for the given endpoints is started."))
(def (sig (procedure "(connect-remote-thread . endpoints)" (id connect-remote-thread))) (p "Connect to remote thread(s) at " (tt "endpoints") " (a list of " (int-link "zmq") " endpoint strings). The return value will be a " (tt "remote-thread") " record which can be sent messages just like normal threads using " (tt "thread-send") ".  The remote threads must be published by using " (tt "publish-thread!") " at the remote side. If more than one endpoint is given in " (tt "endpoints") ", messages will be sent round-robin style thus you should make sure that all messages sent to the remote thread can be handled by any of the given " (tt "endpoints") "."))
(def (sig (parameter "(serializer [FN])" (id serializer))) (p "The function used for serializing objects which are to be sent. It must accept one argument (the object to be serialized) and write the serialized representation to " (tt "(current-output-port)") ". Default: " (tt "write") "."))
(def (sig (parameter "(deserializer [FN])" (id deserializer))) (p "The function used for deserializing received messages. It should read the serialized data stream from " (tt "(current-input-port)") " and return the deserialized object. Default: " (tt "read") "."))
