sched_yield(2) - wariua/manpages-ko GitHub Wiki
sched_yield - ํ๋ก์ธ์ ์๋ณดํ๊ธฐ
#include <sched.h>
int sched_yield(void);
sched_yield()
๋ ํธ์ถ ์ค๋ ๋๊ฐ CPU๋ฅผ ํฌ๊ธฐํ๊ฒ ํ๋ค. ์ค๋ ๋๊ฐ ์๊ธฐ ๊ณ ์ ์ฐ์ ์์์ ๋ํ ํ์ ๋์ผ๋ก ์ด๋ํ๋ฉฐ ์ ์ค๋ ๋๊ฐ ๋๊ฒ ๋๋ค.
์ฑ๊ณต ์ sched_yield()
๋ 0์ ๋ฐํํ๋ค. ์ค๋ฅ ์ -1์ ๋ฐํํ๋ฉฐ errno
๋ฅผ ์ ์ ํ ์ค์ ํ๋ค.
๋ฆฌ๋
์ค ๊ตฌํ์์๋ sched_yield()
๊ฐ ํญ์ ์ฑ๊ณตํ๋ค.
POSIX.1-2001, POSIX.1-2008.
ํธ์ถ ์ค๋ ๋๊ฐ ๊ทธ ์์ ์ ๊ฐ์ฅ ๋์ ์ฐ์ ์์ ๋ชฉ๋ก ๋ด์ ์ ์ผํ ์ค๋ ๋์ด๋ฉด sched_yield()
ํธ์ถ ํ์๋ ๊ณ์ ๋๊ฒ ๋๋ค.
sched_yield()
๋ฅผ ์ฌ์ฉํ ์ ์๋ POSIX ์์คํ
์๋ <unistd.h>
์ _POSIX_PRIORITY_SCHEDULING
์ด ์ ์๋์ด ์๋ค.
๊ฒฝ์์ด (๋ง์ด) ์๋ ์์(๊ฐ๋ น ๋ฎคํ
์ค)์ ํธ์ถ์๊ฐ ๋์์ ๋ ๋ค๋ฅธ ์ค๋ ๋ ๋ด์ง ํ๋ก์ธ์ค์๊ฒ ์คํ ๊ธฐํ๋ฅผ ์ฃผ๋ ์ ๋ต์ sched_yield()
ํธ์ถ๋ก ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์๋ค. ๋ถํ์ํ๊ฒ๋ ๋ถ์ ์ ํ๊ฒ (๊ฐ๋ น ์ค์ผ์ค๋ง ๊ฐ๋ฅํ ๋ค๋ฅธ ์ค๋ ๋์๊ฒ ํ์ํ ์์์ ํธ์ถ์๊ฐ ์์ง ์ก๊ณ ์์ ๋) sched_yield()
๋ฅผ ํธ์ถํ๋ ๊ฒ์ ํผํด์ผ ํ๋ค. ๋ถํ์ํ ๋ฌธ๋งฅ ์ ํ์ด ๋ฐ์ํ์ฌ ์์คํ
์ฑ๋ฅ์ด ์ ํ๋๋ค.
sched_yield()
๋ ์ค์๊ฐ ์ค์ผ์ค๋ง ์ ์ฑ
(์ฆ SCHED_FIFO
๋ SCHED_RR
)์ ์ฌ์ฉํ๊ธฐ ์ํ ๊ฒ์ด๋ค. SCHED_OTHER
๊ฐ์ ๋น๊ฒฐ์ ์ ์ค์ผ์ค๋ง ์ ์ฑ
์ sched_yield()
๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋ช
์ธ๋์ด ์์ง ์์ผ๋ฉฐ ์์ฉ ์ค๊ณ์ ๋ฌธ์ ๊ฐ ์๋ค๋ ๋ป์ผ ๊ฐ๋ฅ์ฑ์ด ๋๋ค.
2017-09-15