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 immedi-
       ately.

       After iom_init is done, iom_add and iom_wait can	be called from differ-
       ent 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+14.3.quarterly>

home | help