📄 semaphor.h
字号:
/* * semaphor.h * * Copyright (C) STMicroelectronics Ltd. 1998 * * Semaphore handling. */#ifndef __os20_semaphor_h#define __os20_semaphor_h#include "task.h" /* for task_t */#include "ostime.h" /* for osclock_t */struct semaphore_class_s;typedef struct semaphore_s{ struct semaphore_class_s* semaphore_class; /* class of semaphore */ int semaphore_count; /* value of semaphore */ task_t* semaphore_front; /* front of queue of */ task_t* semaphore_back; /* back of queue */ /*task_t* semaphore_owner;*/ /* semaphore owner */ struct semaphore_s* semaphore_next; /* next semaphore_t */} semaphore_t;void semaphore_init_fifo (semaphore_t* semaphore, int count);semaphore_t* semaphore_create_fifo (int count);void semaphore_init_priority (semaphore_t* semaphore, int count);semaphore_t* semaphore_create_priority (int count);void semaphore_init_fifo_timeout (semaphore_t* semaphore, int count);semaphore_t* semaphore_create_fifo_timeout (int count);void semaphore_init_priority_timeout (semaphore_t* semaphore, int count);semaphore_t* semaphore_create_priority_timeout (int count);void semaphore_wait (semaphore_t* semaphore);void semaphore_signal (semaphore_t* semaphore);void semaphore_delete (semaphore_t* semaphore);int semaphore_wait_timeout (semaphore_t* semaphore, const osclock_t* timeout);void interrupt_semaphore_signal(semaphore_t *semphore);#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -