Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pthread_yield(3) [debian man page]

PTHREAD_YIELD(3)					     Linux Programmer's Manual						  PTHREAD_YIELD(3)

NAME
pthread_yield - yield the processor SYNOPSIS
#include <pthread.h> int pthread_yield(void); Compile and link with -pthread. DESCRIPTION
pthread_yield() causes the calling thread to relinquish the CPU. The thread is placed at the end of the run queue for its static priority and another thread is scheduled to run. For further details, see sched_yield(2) RETURN VALUE
On success, pthread_yield() returns 0; on error, it returns an error number. ERRORS
On Linux, this call always succeeds (but portable and future-proof applications should nevertheless handle a possible error return). CONFORMING TO
This call is nonstandard, but present on several other systems. Use the standardized sched_yield(2) instead. NOTES
On Linux, this function is implemented as a call to sched_yield(2). SEE ALSO
sched_setscheduler(2), sched_yield(2), pthreads(7) COLOPHON
This page is part of release 3.44 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2009-04-10 PTHREAD_YIELD(3)

Check Out this Related Man Page

SCHED_YIELD(2)						     Linux Programmer's Manual						    SCHED_YIELD(2)

NAME
sched_yield - yield the processor SYNOPSIS
#include <sched.h> int sched_yield(void); DESCRIPTION
sched_yield() causes the calling thread to relinquish the CPU. The thread is moved to the end of the queue for its static priority and a new thread gets to run. RETURN VALUE
On success, sched_yield() returns 0. On error, -1 is returned, and errno is set appropriately. ERRORS
In the Linux implementation, sched_yield() always succeeds. CONFORMING TO
POSIX.1-2001. NOTES
If the calling thread is the only thread in the highest priority list at that time, it will continue to run after a call to sched_yield(). POSIX systems on which sched_yield() is available define _POSIX_PRIORITY_SCHEDULING in <unistd.h>. Strategic calls to sched_yield() can improve performance by giving other threads or processes a chance to run when (heavily) contended resources (e.g., mutexes) have been released by the caller. Avoid calling sched_yield() unnecessarily or inappropriately (e.g., when resources needed by other schedulable threads are still held by the caller), since doing so will result in unnecessary context switches, which will degrade system performance. SEE ALSO
sched_setscheduler(2) for a description of Linux scheduling Programming for the real world - POSIX.4 by Bill O. Gallmeister, O'Reilly & Associates, Inc., ISBN 1-56592-074-0. COLOPHON
This page is part of release 3.44 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2008-10-18 SCHED_YIELD(2)
Man Page

6 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

a pthread problem

Hello, I run my pthread code on Linux with 4 processors. However, the speed up is only 2 times. The code is about solving equation (G+s(i)C)z(i)=B*us(i), i=1,...,n. Here G,C are m*m matrix, B*us(i) is a m*1 vector and s(i) are n different numbers. I need to solve the equation n times to... (2 Replies)
Discussion started by: mgig
2 Replies

2. Programming

a question about pthread performance

Hello, I run my pthread code on Linux with 4 processors. However, the speed up is only 2 times. The code is about solving equation (G+s(i)C)z(i)=B*us(i), i=1,...,n. Here G,C are m*m matrix, B*us(i) is a m*1 vector and s(i) are n different numbers. I need to solve the equation n times to... (1 Reply)
Discussion started by: mgig
1 Replies

3. Programming

urgent help in portable applications

Hello Im stuck with a project on converting existing applications in to their portable versions, What i mean is that i want an application to run on a Linux OS without the need of actually installing the application on that machine. My preffered OS is fedora as it is used on most machines in my... (0 Replies)
Discussion started by: engineeringme
0 Replies

4. UNIX for Advanced & Expert Users

Urgent help in portable applications

Hello Im stuck with a project on converting existing applications in to their portable versions, What i mean is that i want an application to run on a Linux OS without the need of actually installing the application on that machine. My preffered OS is fedora as it is used on most machines in my... (1 Reply)
Discussion started by: engineeringme
1 Replies

5. Linux

Portable Applications

Hello Im stuck with a project on converting existing applications in to their portable versions, What i mean is that i want an application to run on a Linux OS without the need of actually installing the application on that machine. My preffered OS is fedora as it is used on most machines in my... (1 Reply)
Discussion started by: engineeringme
1 Replies

6. UNIX and Linux Applications

urgent help in Portable Applications

Hello Im stuck with a project on converting existing applications in to their portable versions, What i mean is that i want an application to run on a Linux OS without the need of actually installing the application on that machine. My preffered OS is fedora as it is used on most machines in my... (1 Reply)
Discussion started by: engineeringme
1 Replies