Process-in-Process
 All Functions Groups Pages
Functions
Yielding Functionns

Functions

int pip_yield (int flag)
 Yield. More...
 
int pip_yield_to (pip_task_t *task)
 Yield to the specified PiP task. More...
 

Detailed Description

Yielding functions

Description
Yielding execution of the calling BLT/ULP

Function Documentation

int pip_yield ( int  flag)
Name
pip_yield
Synopsis
#include <pip/pip.h>
int pip_yield( int flag );
Parameters
[in]flagto specify the behavior of yielding. See below.
Returns
No context-switch takes place during the call, then this returns zero. If the context-switch to the other BLT happens, then this returns EINTR.
Parameters
flagIf PIP_YIELD_USER, the calling task is scheduling PiP task(s) then the calling task switch to the next eligible-to-run BLT. If PIP_YIELD_SYSTEM, regardless if the calling task is active or inactive, it calls sched_yield. If PIP_YIELD_DEFAULT or zero, then both PIP_YIELD_USER and PIP_YIELD_SYSTEM will be effective.
See Also
pip_yield_to
int pip_yield_to ( pip_task_t *  task)
Name
pip_yield_to
Synopsis
#include <pip/pip.h>
int pip_yield( pip_task_t *task );
Description
Context-switch to the specified PiP task. If task is NULL, then this works the same as what pip_yield(3) does with PIP_YIELD_DEFAULT.
Parameters
[in]taskTarget PiP task to switch.
Returns
Return Zero or EINTR on success. Return an error code on error.
Return values
EPERMPiP library is not yet initialized or already
EPERMThe specified task belongs to the other scheduling domain.
See Also
pip_yield