pthread_yield_np man page on DigitalUNIX

Man page or keyword search:  
man Server   12896 pages
apropos Keyword Search (all sections)
Output format
DigitalUNIX logo
[printable version]

pthread_yield_np(3)					   pthread_yield_np(3)

NAME
       pthread_yield_np	 -  Notifies  the scheduler that the current thread is
       willing to release its processor to other threads of the same or higher
       priority

SYNOPSIS
       #include <pthread.h>

       int pthread_yield_np(
	       void );

LIBRARY
       DECthreads POSIX 1003.1c Library (libpthread.so)

STANDARDS
       Interfaces  documented on this reference page conform to industry stan‐
       dards as follows:

       IEEE Std 1003.1c-1995, POSIX System Application Program Interface

PARAMETERS
       None

DESCRIPTION
       This routine notifies the thread scheduler that the current  thread  is
       willing	to  release  its  processor  to other threads of equivalent or
       greater scheduling precedence.  (A thread generally  will  release  its
       processor  to a thread of a greater scheduling precedence without call‐
       ing this routine.) If no other threads of equivalent or greater	sched‐
       uling precedence are ready to execute, the thread continues.

       This routine can allow knowledge of the details of an application to be
       used  to	 improve  its  performance.  If	 a  thread   does   not	  call
       pthread_yield_np(3),  other threads may be given the opportunity to run
       at arbitrary points (possibly even when the interrupted thread holds  a
       required	 resource).  By making strategic calls to pthread_yield_np(3),
       other threads may be given the opportunity to run  when	the  resources
       are  free.  This	 improves  performance	by reducing contention for the
       resource.

       As a general guideline, consider calling this routine  after  a	thread
       has  released  a	 resource (such as a mutex) which is heavily contended
       for by other threads. This can be especially important if  the  program
       is  running  on	a  uniprocessor machine, or if the thread acquires and
       releases the resource inside a tight loop.

       Use this routine carefully and  sparingly,  because  misuse  can	 cause
       unnecessary context switching which will increase overhead and actually
       degrade performance.  For  example,  it	is  counter-productive	for  a
       thread to yield while it holds a resource which the threads to which it
       is yielding will need. Likewise, it is pointless to yield unless	 there
       is likely to be another thread which is ready to run.

RETURN VALUES
       If  an  error  condition	 occurs, this routine returns an integer value
       indicating the type of error. Possible return values  are  as  follows:
       Successful  completion.	The routine is not supported by this implemen‐
       tation.

ERRORS
       None

SEE ALSO
       Functions:   pthread_attr_setschedparam(3),   pthread_setschedparam(3),
       pthread_getscheduler(3)

       Manuals: Guide to DECthreads and Programmer's Guide

							   pthread_yield_np(3)
[top]

List of man pages available for DigitalUNIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net