⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 psemaphore.cxx

📁 PTypes (C++ Portable Types Library) is a simple alternative to the STL that includes multithreading
💻 CXX
字号:
/* * *  C++ Portable Types Library (PTypes) *  Version 1.7.5   Released 9-Mar-2003 * *  Copyright (c) 2001, 2002, 2003 Hovik Melikyan * *  http://www.melikyan.com/ptypes/ *  http://ptypes.sourceforge.net/ * */#ifdef WIN32#  include <windows.h>#else#  include <pthread.h>#endif#include "pasync.h"PTYPES_BEGIN#ifndef __SEM_TO_TIMEDSEM__static void sem_fail(){    fatal(CRIT_FIRST + 41, "Semaphore failed");}semaphore::semaphore(int initvalue) {    if (sem_init(&handle, 0, initvalue) != 0)        sem_fail();}semaphore::~semaphore() {    sem_destroy(&handle);}void semaphore::wait() {    if (sem_wait(&handle) != 0)        sem_fail();}void semaphore::post() {    if (sem_post(&handle) != 0)        sem_fail();}#elseint _psemaphore_dummy_symbol;  // avoid ranlib's warning message#endifPTYPES_END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -