|
���
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.
|