ubik signal API
More...
#include <ubinos_config.h>
#include <ubinos/type.h>
#include "task.h"
Go to the source code of this file.
ubik signal API
ubik signal API를 정의합니다.
◆ _signal_tip_t
◆ signal_pt
◆ signal_broadcast()
int signal_broadcast |
( |
signal_pt |
signal, |
|
|
int |
sigtype |
|
) |
| |
기다리고 있는 태스크들 모두에게 시그널을 보내는 함수
- Parameters
-
signal | 대상 시그널 포인터 |
sigtype | 시그널 종류 (0 이상) |
- Returns
- 0: 성공
-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
- Examples
- signaltest01.c.
◆ signal_create()
◆ signal_create_ext()
int signal_create_ext |
( |
signal_pt * |
signal_p, |
|
|
unsigned int |
option |
|
) |
| |
시그널를 생성하는 함수 (확장형)
- Parameters
-
signal_p | 생성한 시그널의 주소를 저장할 포인터의 주소 |
option | 옵션 (SIGNAL_OPT__...)
0: 기본 설정
|
- Returns
- 0: 성공
-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
◆ signal_delete()
◆ signal_send()
int signal_send |
( |
signal_pt |
signal, |
|
|
int |
sigtype |
|
) |
| |
◆ signal_setsender()
시그널을 보내는(시그널을 기다리는 최상위 우선순위 태스크의우선순위를 상속받을) 태스크를 설정하는 함수
- Parameters
-
signal | 대상 시그널 포인터 |
task | 대상 태스크 포인터
NULL: 설정 해제
|
- Returns
- 0: 성공
-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
- Examples
- signaltest03.c.
◆ signal_wait()
◆ signal_wait_timed()
int signal_wait_timed |
( |
signal_pt |
signal, |
|
|
unsigned int |
tick |
|
) |
| |
제한 시간동안 시그널을 기다리는 함수
- Parameters
-
signal | 대상 시그널 포인터 |
tick | 제한 시간 (시스템 틱 수) |
- Returns
- 받은 시그널 종류
-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
UBIK_ERR__TIMEOUT : 제한 시간 초과
UBIK_ERR__DEADLOCK : 데드락 발생 가능성이 있음
UBIK_ERR__TERMINATED : 기다리던 객체가 제거되었음
- Examples
- signaltest01.c, and tasktest08.c.
◆ signal_wait_timedms()
int signal_wait_timedms |
( |
signal_pt |
signal, |
|
|
unsigned int |
timems |
|
) |
| |
제한 시간동안 시그널을 기다리는 함수 (천분의 일초 단위)
- Parameters
-
signal | 대상 시그널 포인터 |
timems | 제한 시간 (천분의 일초) |
- Returns
- 받은 시그널 종류
-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
UBIK_ERR__TIMEOUT : 제한 시간 초과
UBIK_ERR__DEADLOCK : 데드락 발생 가능성이 있음
UBIK_ERR__TERMINATED : 기다리던 객체가 제거되었음