Server for Information Technologies óÅÒ×ÅÒ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ
ãÅÎÔÒÏÍ éÎÆÏÒÍÁÃÉÏÎÎÙÈ ôÅÈÎÏÌÏÇÉÊ
(095) 932-9212, 932-9213, 939-0783
E-mail: info@citforum.ru
óÅÒ×ÅÒ ÓÏÄÅÒÖÉÔ ÍÏÒÅ(!) ÁÎÁÌÉÔÉÞÅÓËÏÊ ÉÎÆÏÒÍÁÃÉÉ CIT Forum CD-ROM

CREATSEM(3)
XENIX System V (21 ÉÀÎÑ 1987)

éíñ
creatsem - coÚÄaeÔ Ä×oÉÞÎÙÊ ceÍaÆop

óéîôáëóéó

	int creatsem (sem_name, mode)
	char *sem_name;
	int mode;

ïðéóáîéå
creatsem oÐpeÄeÌÑeÔ Ä×oÉÞÎÙÊ ceÍaÆop c ÉÍeÎeÍ sem_name; paÂoÔa c ceÍaÆopoÍ ÂyÄeÔ ocyÝecÔ×ÌÑÔØcÑ ÆyÎËÃÉÑÍÉ waitsem(3) É sigsem(3) ÄÌÑ ÐoÄÄepÖËÉ ÉcËÌÀÞÉÔeÌØÎoÇo ÄocÔyÐa Ë pecypcaÍ, paÚÄeÌÑeÍÙÍ ÐepeÍeÎÎÙÍ ÉÌÉ ËpÉÔÉÞecËÉÍ yÞacÔËaÍ ÐpoÇpaÍÍ. creatsem ×oÚ×paÝaeÔ yÎÉËaÌØÎÙÊ ÎoÍep ceÍaÆopa, sem_num, ËoÔopÙÊ ÚaÔeÍ ÉcÐoÌØÚyeÔcÑ × oÐepaÃÉÑx waitsem É sigsem. CeÍaÆopÙ cÞÉÔaÀÔcÑ cÐeÃÉaÌØÎÙÍÉ ÆaÊÌaÍÉ c ÎyÌe×oÊ ÄÌÉÎoÊ. ðpocÔpaÎcÔ×o, ÐpeÄÎaÚÎaÞeÎÎoe ÄÌÑ ÉÍeÎÉ ÆaÊÌa, ÉcÐoÌØÚyeÔcÑ ÄÌÑ xpaÎeÎÉÑ yÎÉËaÌØÎoÇo ÉÄeÎÔÉÆÉËaÔopa ceÍaÆopa. mode ÚaÄaeÔ ÄocÔyÐ Ë ceÍaÆopy ÔaË Öe, ËaË Ë oÂÙÞÎoÍy ÆaÊÌy. äocÔyÐ Ë ceÍaÆopy paÚpeÛeÎ Îa ocÎo×aÎÉÉ ÂÉÔa paÚpeÛeÎÉÑ ÞÔeÎÉÑ; paÚpeÛeÎÉe ÚaÐÉcÉ É ×ÙÐoÌÎeÎÉÑ ÉÇÎopÉpyeÔcÑ.

C ceÍaÆopoÍ ÍoÖÎo paÂoÔaÔØ ÐpÉÍÉÔÉ×aÍÉ cÉÎxpoÎÎoÇo xapaËÔepa, ÔaËÉÍÉ ËaË waitsem É sigsem. creatsem ycÔaÎa×ÌÉ×aeÔ ceÍaÆop × ÎeËoÔopoe ÎaÞaÌØÎoe ÚÎaÞeÎÉe, opensem oÔËpÙ×aeÔ ceÍaÆop ÄÌÑ ÉcÐoÌØÚo×aÎÉÑ eÇo ÐpoÃeccoÍ. CÉÎxpoÎÎocÔØ paÂoÔÙ c ceÍaÆopoÍ ÇapaÎÔÉpyeÔ ÎeÄeÌÉÍocÔØ (ÎeÐpepÙ×aeÍocÔØ) ceÍaÆopÎÙx oÐepaÃÉÊ. üÔÉ ÐpÉÍÉÔÉ×Ù ÉcÐoÌØÚyÀÔcÑ ÐpÉÍeÎÉÔeÌØÎo Ë ceÍaÆopaÍ, ËoÔopÙe c×ÑÚÙ×aÀÔcÑ c ËaÖÄÙÍ pecypcoÍ (×ËÌÀÞaÑ ËpÉÔÉÞecËÉe yÞacÔËÉ ÐpoÇpaÍÍ) ÄÌÑ eÇo ÚaÝÉÔÙ.

ðpoÃecc, yÐpa×ÌÑÀÝÉÊ ceÍaÆopoÍ, ÄoÌÖeÎ ×ÙÐoÌÎÉÔØ:

	sem_num = creatsem ("semaphore", mode);

ÄÌÑ coÚÄaÎÉÑ, ÉÎÉÃÉaÌÉÚaÃÉÉ É oÔËpÙÔÉÑ ceÍaÆopa ÜÔÉÍ ÐpoÃeccoÍ. Bce ÄpyÇÉe ÐpoÃeccÙ, ÉcÐoÌØÚyÀÝÉe ceÍaÆop, ÄoÌÖÎÙ ×ÙÐoÌÎÉÔØ:

	sem_num = opensem ("semaphore");

ÄÌÑ ÐoÌyÞeÎÉÑ ÄocÔyÐa Ë eÇo ÚÎaÞeÎÉÀ. úaÍeÔÉÍ, ÞÔo ÐpoÃecc Îe ÍoÖeÔ oÔËpÙÔØ É ÉcÐoÌØÚo×aÔØ ceÍaÆop, ËoÔopÙÊ Îe ÉÎÉÃÉaÌÉÚÉpo×aÎ ×ÙÚo×oÍ creatsem. ðpoÃecc Îe ÍoÖeÔ oÔËpÙÔØ ceÍaÆop ÂoÌee oÄÎoÇo paÚa × ÔeÞeÎÉe oÄÎoÇo ÐepÉoÄa paÂoÔÙ. KaË coÚÄaÀÝÉÊ, ÔaË É oÔËpÙ×aÀÝÉÊ ÐpoÃeccÙ ÉcÐoÌØÚyÀÔ waitsem É sigsem ÄÌÑ paÂoÔÙ c ceÍaÆopoÍ sem_num.

CO÷íECôéíOCôø
creatsem ÍoÖeÔ ÂÙÔØ ÉcÐoÌØÚo×aÎ ÄÌÑ oÐpeÄeÌeÎÉÑ ceÍaÆopo× XENIX, ×epcÉÉ 3, Îo Îe ceÍaÆopo× XENIX System V.

óí. ôáëöå
opensem(3), waitsem(3), sigsem(3)

äéáçîïóôéëá
creatsem ×oÚ×paÝaeÔ ÚÎaÞeÎÉe -1 × cÌyÞae oÂÎapyÖeÎÉÑ oÛÉÂËÉ. EcÌÉ ceÍaÆop c ÉÍeÎeÍ sem_num yÖe oÔËpÙÔ ÄÌÑ ÉcÐoÌØÚo×aÎÉÑ ÄpyÇÉÍÉ ÐpoÃeccaÍÉ, × errno ÚaÎocÉÔcÑ ËoÄ oÛÉÂËÉ EEXIST. EcÌÉ yËaÚaÎÎÙÊ ÆaÊÌ cyÝecÔ×yeÔ, Îo Îe ÉÍeeÔ ceÍaÆopÎoÇo ÔÉÐa, × errno ÚaÎocÉÔcÑ ENOTNAM. EcÌÉ ceÍaÆop Îe ÂÙÌ ÉÎÉÃÉaÌÉÚÉpo×aÎ ×ÙÚo×oÍ creatsem, × errno ÚaÎocÉÔcÑ ENAVAIL.

úAíEþAîéñ
ðocÌe ×ÙÚo×a creatsem ÎeoÂxoÄÉÍo ×ÙÚ×aÔØ waitsem ÄÌÑ ÐoÌyÞeÎÉÑ yÐpa×ÌeÎÉÑ ×ÙÂpaÎÎÙÍ pecypcoÍ.

üÔa ocoÂeÎÎocÔØ cÐeÃÉÆÉÞÎa ÄÌÑ XENIX É ÍoÖeÔ oÔcyÔcÔ×o×aÔØ × ÄpyÇÉx peaÌÉÚaÃÉÑx UNIX.

ðpoÇpaÍÍÙ, ÉcÐoÌØÚyÀÝÉe ÜÔy ÆyÎËÃÉÀ, ÄoÌÖÎÙ ËoÍÐoÎo×aÔØcÑ c ÆÌaÇoÍ -lx.
Comments: info@citmgu.ru
Designed by Andrey Novikov
Copyright © CIT