?? cj_semaphore.h
字號:
/*****************************************************************************/
/* */
/* 文件名:CJ_SEMAPHORE.C */
/* 創(chuàng)建人:王克鋒 */
/* 日 期:2005-03-03 */
/* 描 述:文件處理函數(shù)組包含文件 */
/* */
/* */
/* 修改人: */
/* 日 期: */
/* 描 述: */
/* */
/*****************************************************************************/
#ifndef _CJ_SEMAPHORE_H_
#define _CJ_SEMAPHORE_H_
#include "cj_define.h"
#include "cj_datetime.h"
#include "cj_errmanager.h"
#define YCJ_MAX_SEM_SIZE
#ifdef __cplusplus
extern "C"
{
#endif
#include <limits.h>
#include <windows.h>
#define YCJSERCODE_TIMEOUT YCJRCODE
/*信號燈結(jié)構(gòu)*/
typedef struct TCJSEStru
{
unsigned int semid; /*信號燈對象標(biāo)識*/
unsigned int cnt; /*信號燈數(shù)量*/
int creator; /*創(chuàng)建者標(biāo)志*/
char semname[32]; /*信號燈對象名稱前綴*/
HANDLE *hsem; /*信號燈對象HANDLE數(shù)組指針*/
} TCJSEStru;
typedef TCJSEStru * PTCJSEStru;
/*創(chuàng)建信號燈對象*/
int CJSEInitial(PTCJSEStru v_ss, TCJUINT4 v_semid, TCJUINT4 v_cnt,
PTCJEMStack v_stack);
/*映射信號燈對象*/
int CJSEAttach(PTCJSEStru v_ss, TCJUINT4 v_semid, TCJUINT4 v_cnt,
PTCJEMStack v_stack);
/*指定信號燈執(zhí)行"加" v_timeout 為超時時間*/
int CJSEInc(PTCJSEStru v_ss, TCJUINT4 v_sno, TCJUINT4 v_val,
TCJUINT4 v_timeout, PTCJEMStack v_stack);
/*指定信號燈執(zhí)行"減" v_timeout 為超時時間*/
int CJSEDec(PTCJSEStru v_ss, TCJUINT4 v_sno, TCJUINT4 v_val,
TCJUINT4 v_timeout, PTCJEMStack v_stack);
/*設(shè)置指定信號燈的當(dāng)前值*/
int CJSESetVal(PTCJSEStru v_ss, TCJUINT4 v_sno, int v_val,
PTCJEMStack v_stack);
/*設(shè)置指定信號燈的當(dāng)前值*/
int CJSEGetVal(PTCJSEStru v_ss, TCJUINT4 v_sno, int * v_val,
PTCJEMStack v_stack);
/*銷毀信號燈*/
int CJSEDestroy(PTCJSEStru v_ss, PTCJEMStack v_stack);
#ifdef __cplusplus
}
#endif
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -