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

  1.  
  2. <HTML>
  3. <HEAD>
  4. <TITLE>Win32::IPC - Base class for Win32 synchronization objects</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::IPC - Base class for Win32 synchronization objects</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="#functions">Functions</A></LI>
  29.         <LI><A HREF="#deprecated functions and methods">Deprecated Functions and Methods</A></LI>
  30.     </UL>
  31.  
  32.     <LI><A HREF="#author">AUTHOR</A></LI>
  33. </UL>
  34. <!-- INDEX END -->
  35.  
  36. <HR>
  37. <P>
  38. <H1><A NAME="name">NAME</A></H1>
  39. <P>Win32::IPC - Base class for Win32 synchronization objects</P>
  40. <P>
  41. <HR>
  42. <H1><A NAME="supportedplatforms">SUPPORTED PLATFORMS</A></H1>
  43. <UL>
  44. <LI>Windows</LI>
  45. </UL>
  46. <HR>
  47. <H1><A NAME="synopsis">SYNOPSIS</A></H1>
  48. <PRE>
  49.     use Win32::Event 1.00 qw(wait_any);
  50.     #Create objects.</PRE>
  51. <PRE>
  52.     wait_any(@ListOfObjects,$timeout);</PRE>
  53. <P>
  54. <HR>
  55. <H1><A NAME="description">DESCRIPTION</A></H1>
  56. <P>This module is loaded by the other Win32 synchronization modules.  You
  57. shouldn't need to load it yourself.  It supplies the wait functions to
  58. those modules.</P>
  59. <P>The synchronization modules are <A HREF="#win32::changenotify">Win32::ChangeNotify</A>,
  60. <A HREF="#win32::event">Win32::Event</A>, <A HREF="#win32::mutex">Win32::Mutex</A>, & <A HREF="#win32::semaphore">Win32::Semaphore</A>.</P>
  61. <P>
  62. <H2><A NAME="methods">Methods</A></H2>
  63. <P><STRONG>Win32::IPC</STRONG> supplies one method to all synchronization objects.</P>
  64. <DL>
  65. <DT><STRONG><A NAME="item_wait">$obj-><CODE>wait([$timeout])</CODE></A></STRONG><BR>
  66. <DD>
  67. Waits for <CODE>$obj</CODE> to become signalled.  <CODE>$timeout</CODE> is the maximum time
  68. to wait (in milliseconds).  If <CODE>$timeout</CODE> is omitted, waits forever.
  69. If <CODE>$timeout</CODE> is 0, returns immediately.
  70. <P>Returns:</P>
  71. <PRE>
  72.    +1    The object is signalled
  73.    -1    The object is an abandoned mutex
  74.     0    Timed out
  75.   undef  An error occurred</PRE>
  76. <P></P></DL>
  77. <P>
  78. <H2><A NAME="functions">Functions</A></H2>
  79. <DL>
  80. <DT><STRONG><A NAME="item_wait_any">wait_any(@objects, [$timeout])</A></STRONG><BR>
  81. <DD>
  82. Waits for at least one of the <CODE>@objects</CODE> to become signalled.
  83. <CODE>$timeout</CODE> is the maximum time to wait (in milliseconds).  If
  84. <CODE>$timeout</CODE> is omitted, waits forever.  If <CODE>$timeout</CODE> is 0, returns
  85. immediately.
  86. <P>The return value indicates which object ended the wait:</P>
  87. <PRE>
  88.    +N    $object[N-1] is signalled
  89.    -N    $object[N-1] is an abandoned mutex
  90.     0    Timed out
  91.   undef  An error occurred</PRE>
  92. <P>If more than one object became signalled, the one with the lowest
  93. index is used.</P>
  94. <P></P>
  95. <DT><STRONG><A NAME="item_wait_all">wait_all(@objects, [$timeout])</A></STRONG><BR>
  96. <DD>
  97. This is the same as <A HREF="#item_wait_any"><CODE>wait_any</CODE></A>, but it waits for all the <CODE>@objects</CODE>
  98. to become signalled.  The return value indicates the last object to
  99. become signalled, and is negative if at least one of the <CODE>@objects</CODE>
  100. is an abandoned mutex.
  101. <P></P></DL>
  102. <P>
  103. <H2><A NAME="deprecated functions and methods">Deprecated Functions and Methods</A></H2>
  104. <P><STRONG>Win32::IPC</STRONG> still supports the ActiveWare syntax, but its use is
  105. deprecated.</P>
  106. <DL>
  107. <DT><STRONG><A NAME="item_INFINITE">INFINITE</A></STRONG><BR>
  108. <DD>
  109. Constant value for an infinite timeout.  Omit the <CODE>$timeout</CODE> argument
  110. instead.
  111. <P></P>
  112. <DT><STRONG><A NAME="item_WaitForMultipleObjects">WaitForMultipleObjects(\@objects, $wait_all, $timeout)</A></STRONG><BR>
  113. <DD>
  114. Warning: <A HREF="#item_WaitForMultipleObjects"><CODE>WaitForMultipleObjects</CODE></A> erases <CODE>@objects</CODE>!
  115. Use <A HREF="#item_wait_all"><CODE>wait_all</CODE></A> or <A HREF="#item_wait_any"><CODE>wait_any</CODE></A> instead.
  116. <P></P>
  117. <DT><STRONG><A NAME="item_Wait">$obj-><CODE>Wait($timeout)</CODE></A></STRONG><BR>
  118. <DD>
  119. Similar to <A HREF="#item_wait"><CODE>not $obj->wait($timeout)</CODE></A>.
  120. <P></P></DL>
  121. <P>
  122. <HR>
  123. <H1><A NAME="author">AUTHOR</A></H1>
  124. <P>Christopher J. Madsen <<EM><A HREF="mailto:chris_madsen@geocities.com">chris_madsen@geocities.com</A></EM>></P>
  125. <P>Loosely based on the original module by ActiveWare Internet Corp.,
  126. <EM><A HREF="http://www.ActiveWare.com">http://www.ActiveWare.com</A></EM></P>
  127. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  128. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  129. <STRONG><P CLASS=block> Win32::IPC - Base class for Win32 synchronization objects</P></STRONG>
  130. </TD></TR>
  131. </TABLE>
  132.  
  133. </BODY>
  134.  
  135. </HTML>
  136.