efl.ecore.FdHandler
Class¶
- class efl.ecore.FdHandler(fd, int flags, func, *args, **kargs)¶
Bases:
object
Adds a callback for activity on the given file descriptor.
func
will be called during the execution ofmain_loop_begin()
when the file descriptor is available for reading, or writing, or both.When the handler
func
is called, it must return a value of either True or False (remember that Python returns None if no value is explicitly returned and None evaluates to False). If it returns True, it will continue to monitor the given file descriptor, or if it returns False it will be deleted automatically making any references/handles for it invalid.FdHandler use includes:
handle multiple socket connections using a single process;
thread wake-up and synchronization;
non-blocking file description operations.
- Parameters
fd – file descriptor or object with fileno() method.
flags – bitwise OR of ECORE_FD_READ, ECORE_FD_WRITE…
func – function to call when file descriptor state changes.
Expected func signature:
func(fd_handler, *args, **kargs): bool
- active_get(flags)¶
Return if read, write or error, or a combination thereof, is active on the file descriptor of the given FD handler.
- Return type
bool
- active_set(flags)¶
Set what active streams the given FdHandler should be monitoring.
- Parameters
flags – one of - ECORE_FD_NONE - ECORE_FD_READ - ECORE_FD_WRITE - ECORE_FD_ERROR - ECORE_FD_ALL
- can_read()¶
- Return type
bool
- can_write()¶
- Return type
bool
- delete()¶
Stop callback emission and free internal resources.
- fd_get()¶
Get the file descriptor number
- Return type
int
- has_error()¶
- Return type
bool
- is_deleted()¶
Check if the object has been deleted thus leaving the object shallow.
- Returns
True if the object has been deleted yet, False otherwise.
- Return type
bool
New in version 1.18.
- prepare_callback_set(func, *args, **kargs)¶
Set a function to call before doing the select() on the fd.
Expected signature:
function(object, *args, **kargs)
- stop()¶
Alias for
delete
.