//////////////////////////////////////////////////////////////////////////// // CSemaphore クラスのインタフェース宣言 // // Solaris上でセマフォを実装する。 //////////////////////////////////////////////////////////////////////////// #if !defined( SEMAPHORE_H_INCLUDED_ ) #define SEMAPHORE_H_INCLUDED_ #if defined( _WIN32 ) #include #else #include #endif class CSemaphore { public: CSemaphore(); ~CSemaphore(); // P操作 void P(); // 待ち合わせる // V操作 void V(); // 解放する protected: // セマフォ #if defined( _WIN32 ) HANDLE m_Semaphore; #else sem_t m_Semaphore; #endif }; #endif // SEMAPHORE_H_INCLUDED_