windows.event.h.xml 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <chapter xml:id="windows.event.h">
  2. <title><tt>__vic/windows/event.h</tt></title>
  3. <chapter xml:id="windows--Event">
  4. <title><tt>windows::Event</tt></title>
  5. <code-block lang="C++">
  6. class windows::Event : private non_copyable
  7. {
  8. public:
  9. explicit Event(bool bManualReset,
  10. bool bInitialSignaled = false, LPCWSTR lpName = nullptr);
  11. ~Event();
  12. void Set();
  13. void Reset();
  14. bool Wait(DWORD timeout = INFINITE) const;
  15. bool wait_for(std::chrono::milliseconds ms) const; // C++11
  16. HANDLE handle() const;
  17. };
  18. </code-block>
  19. <p>Обёртка для Win32 API event synchronization object.</p>
  20. <section><title>Члены класса</title>
  21. <synopsis>
  22. <prototype>explicit Event(bool bManualReset, bool bInitialSignaled = false, LPCWSTR lpName = nullptr)</prototype>
  23. <p>Создаёт объект используя <tt>::CreateEvent()</tt>. Бросает исключения при
  24. ошибках.</p>
  25. </synopsis>
  26. <synopsis>
  27. <prototype>~Event()</prototype>
  28. <p>Уничтожает объект.</p>
  29. </synopsis>
  30. <synopsis>
  31. <prototype>void Set()</prototype>
  32. <p>Вызывает <tt>::SetEvent()</tt>. Бросает исключения при ошибках.</p>
  33. </synopsis>
  34. <synopsis>
  35. <prototype>void Reset()</prototype>
  36. <p>Вызывает <tt>::ResetEvent()</tt>. Бросает исключения при ошибках.</p>
  37. </synopsis>
  38. <synopsis>
  39. <prototype>bool Wait(DWORD timeout = INFINITE) const</prototype>
  40. <p>Вызывает <tt>::WaitForSingleObject()</tt>. Бросает исключения при ошибках.</p>
  41. </synopsis>
  42. <synopsis>
  43. <prototype>bool wait_for(std::chrono::milliseconds ms) const <sign>C++11</sign></prototype>
  44. <p>Обёртка <tt>Wait()</tt>, адаптированная для chrono.</p>
  45. </synopsis>
  46. <synopsis>
  47. <prototype>HANDLE handle() const</prototype>
  48. <p>Возвращает Win32 API handle.</p>
  49. </synopsis>
  50. </section>
  51. </chapter>
  52. </chapter>