home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd1.bin / zkuste / Perl / ActivePerl-5.6.0.613.msi / 䆊䌷䈹䈙䏵-䞅䞆䞀㡆䞃䄦䠥 / _6a4f9c6354b79546dc32b059100cbc70 < prev    next >
Text File  |  2000-03-23  |  5KB  |  120 lines

  1.  
  2. <HTML>
  3. <HEAD>
  4. <TITLE>Win32::Semaphore - Use Win32 semaphore objects from Perl</TITLE>
  5. <LINK REL="stylesheet" HREF="../../../Active.css" TYPE="text/css">
  6. <LINK REV="made" HREF="mailto:">
  7. </HEAD>
  8.  
  9. <BODY>
  10. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  11. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  12. <STRONG><P CLASS=block> Win32::Semaphore - Use Win32 semaphore objects from Perl</P></STRONG>
  13. </TD></TR>
  14. </TABLE>
  15.  
  16. <A NAME="__index__"></A>
  17. <!-- INDEX BEGIN -->
  18.  
  19. <UL>
  20.  
  21.     <LI><A HREF="#name">NAME</A></LI><LI><A HREF="#supportedplatforms">SUPPORTED PLATFORMS</A></LI>
  22.  
  23.     <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
  24.     <LI><A HREF="#description">DESCRIPTION</A></LI>
  25.     <UL>
  26.  
  27.         <LI><A HREF="#methods">Methods</A></LI>
  28.         <LI><A HREF="#deprecated functions and methods">Deprecated Functions and Methods</A></LI>
  29.     </UL>
  30.  
  31.     <LI><A HREF="#author">AUTHOR</A></LI>
  32. </UL>
  33. <!-- INDEX END -->
  34.  
  35. <HR>
  36. <P>
  37. <H1><A NAME="name">NAME</A></H1>
  38. <P>Win32::Semaphore - Use Win32 semaphore objects from Perl</P>
  39. <P>
  40. <HR>
  41. <H1><A NAME="supportedplatforms">SUPPORTED PLATFORMS</A></H1>
  42. <UL>
  43. <LI>Windows</LI>
  44. </UL>
  45. <HR>
  46. <H1><A NAME="synopsis require win32::semaphore;">SYNOPSIS
  47.     require Win32::Semaphore;</A></H1>
  48. <PRE>
  49.         $sem = Win32::Semaphore->new($initial,$maximum,$name);
  50.         $sem->wait;</PRE>
  51. <P>
  52. <HR>
  53. <H1><A NAME="description">DESCRIPTION</A></H1>
  54. <P>This module allows access to Win32 semaphore objects.  The <A HREF="#item_wait"><CODE>wait</CODE></A>
  55. method and <CODE>wait_all</CODE> & <CODE>wait_any</CODE> functions are inherited from the
  56. <A HREF="#win32::ipc">Win32::IPC</A> module.</P>
  57. <P>
  58. <H2><A NAME="methods">Methods</A></H2>
  59. <DL>
  60. <DT><STRONG><A NAME="item_new">$semaphore = Win32::Semaphore->new($initial, $maximum, [$name])</A></STRONG><BR>
  61. <DD>
  62. Constructor for a new semaphore object.  <CODE>$initial</CODE> is the initial
  63. count, and <CODE>$maximum</CODE> is the maximum count for the semaphore.  If
  64. <CODE>$name</CODE> is omitted, creates an unnamed semaphore object.
  65. <P>If <CODE>$name</CODE> signifies an existing semaphore object, then <CODE>$initial</CODE>
  66. and <CODE>$maximum</CODE> are ignored and the object is opened.</P>
  67. <P></P>
  68. <DT><STRONG><A NAME="item_open">$semaphore = Win32::Semaphore-><CODE>open($name)</CODE></A></STRONG><BR>
  69. <DD>
  70. Constructor for opening an existing semaphore object.
  71. <P></P>
  72. <DT><STRONG><A NAME="item_release">$semaphore->release([$increment, [$previous]])</A></STRONG><BR>
  73. <DD>
  74. Increment the count of <CODE>$semaphore</CODE> by <CODE>$increment</CODE> (default 1).
  75. If <CODE>$increment</CODE> plus the semaphore's current count is more than its
  76. maximum count, the count is not changed.  Returns true if the
  77. increment is successful.
  78. <P>The semaphore's count (before incrementing) is stored in the second
  79. argument (if any).</P>
  80. <P>It is not necessary to wait on a semaphore before calling <A HREF="#item_release"><CODE>release</CODE></A>,
  81. but you'd better know what you're doing.</P>
  82. <P></P>
  83. <DT><STRONG><A NAME="item_wait">$semaphore-><CODE>wait([$timeout])</CODE></A></STRONG><BR>
  84. <DD>
  85. Wait for <CODE>$semaphore</CODE>'s count to be nonzero, then decrement it by 1.
  86. See <A HREF="#win32::ipc">Win32::IPC</A>.
  87. <P></P></DL>
  88. <P>
  89. <H2><A NAME="deprecated functions and methods">Deprecated Functions and Methods</A></H2>
  90. <P><STRONG>Win32::Semaphore</STRONG> still supports the ActiveWare syntax, but its use
  91. is deprecated.</P>
  92. <DL>
  93. <DT><STRONG><A NAME="item_Create">Win32::Semaphore::Create($SemObject,$Initial,$Max,$Name)</A></STRONG><BR>
  94. <DD>
  95. Use <A HREF="#item_new"><CODE>$SemObject = Win32::Semaphore->new($Initial,$Max,$Name)</CODE></A> instead.
  96. <P></P>
  97. <DT><STRONG><A NAME="item_Open">Win32::Semaphore::Open($SemObject, $Name)</A></STRONG><BR>
  98. <DD>
  99. Use <A HREF="#item_open"><CODE>$SemObject = Win32::Semaphore->open($Name)</CODE></A> instead.
  100. <P></P>
  101. <DT><STRONG><A NAME="item_Release">$SemObj-><CODE>Release($Count,$LastVal)</CODE></A></STRONG><BR>
  102. <DD>
  103. Use <A HREF="#item_release"><CODE>$SemObj->release($Count,$LastVal)</CODE></A> instead.
  104. <P></P></DL>
  105. <P>
  106. <HR>
  107. <H1><A NAME="author">AUTHOR</A></H1>
  108. <P>Christopher J. Madsen <<EM><A HREF="mailto:chris_madsen@geocities.com">chris_madsen@geocities.com</A></EM>></P>
  109. <P>Loosely based on the original module by ActiveWare Internet Corp.,
  110. <EM><A HREF="http://www.ActiveWare.com">http://www.ActiveWare.com</A></EM></P>
  111. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  112. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  113. <STRONG><P CLASS=block> Win32::Semaphore - Use Win32 semaphore objects from Perl</P></STRONG>
  114. </TD></TR>
  115. </TABLE>
  116.  
  117. </BODY>
  118.  
  119. </HTML>
  120.