Janet 1.11.1-4cc6809 Documentation
(Other Versions:
          
          1.10.1
          
          1.9.1
          
          1.8.1
          
          1.7.0
          
          1.6.0
          
          1.5.1
          
          1.5.0
          
          1.4.0
          
          1.3.1
          )
        Threads
Index
thread/close thread/current thread/exit thread/new thread/receive thread/send
thread/close cfunction  
(thread/close thread) Close a thread, unblocking it and ending communication with it. Note that closing a thread is idempotent and does not cancel the thread's operation. Returns nil.Community Examples
thread/exit cfunction  
(thread/exit &opt code) Exit from the current thread. If no more threads are running, ends the process, but otherwise does not end the current process.Community Examples
thread/new cfunction  
(thread/new func &opt capacity flags) Start a new thread that will start immediately. If capacity is provided, that is how many messages can be stored in the thread's mailbox before blocking senders. The capacity must be between 1 and 65535 inclusive, and defaults to 10. Can optionally provide flags to the new thread - supported flags are: :h - Start a heavyweight thread. This loads the core environment by default, so may use more memory initially. Messages may compress better, though. :a - Allow sending over registered abstract types to the new thread :c - Send over cfunction information to the new thread. Returns a handle to the new thread.Community Examples
thread/receive cfunction  
(thread/receive &opt timeout) Get a message sent to this thread. If timeout is provided, an error will be thrown after the timeout has elapsed but no messages are received.Community Examples
thread/send cfunction  
        
      (thread/send thread msg) Send a message to the thread. This will never block and returns thread immediately. Will throw an error if there is a problem sending the message.Community Examples