Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
iom_init(3)		    Library Functions Manual		     iom_init(3)

NAME
     iom_init - create new I/O multiplexer

SYNTAX
     #include <libowfat/io.h>

     int iom_init(iomux_t* c);

DESCRIPTION
     iom_init initializes an I/O multiplexer.

     An  I/O  multiplexer  is  a context that can be used to do I/O multiplexing
     with support for multiple	threads.  Add  events  to  a  multiplexer  using
     iom_add,  and  then  get the next available event with iom_wait. If you are
     done and want to signal all the threads something, set  a	volatile  global
     variable  to  tell  the threads to stop and then fall iom_abort to tell all
     pending iom_wait operations in all threads to return immediately.

     After iom_init is done, iom_add and iom_wait can be called  from  different
     threads on the same context, and they will synchronize internally.

LINKING
     You may have to add -lpthread to the command line in the linking step.

RETURN VALUE
     iom_init returns 0 on success and -1 on error, setting errno.

SEE ALSO
     iom_add, iom_wait, iom_abort

								     iom_init(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=libowfat_iom_init&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help