📄 test0319c.cpp
字号:
#include "vxWorks.h"
#include "taskLib.h"
#include "logLib.h"
#include "sigLib.h"
#include "stdio.h"
#include "errnoLib.h"
#include "string.h"
#define STACK_SIZE 20000
SEM_ID semId;
int tidsigRx;
STATUS progStart();
STATUS progStop();
STATUS sigRx();
STATUS sigTx();
void sigHandler(int sig);
STATUS progStart()
{
semId = semBCreate( SEM_Q_PRIORITY, SEM_EMPTY );
tidsigRx = taskSpawn( "tsigRx", 200, 0, STACK_SIZE, (FUNCPTR)sigRx,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
logMsg("start\n", 0, 0, 0, 0, 0, 0 );
return OK;
}
STATUS sigRx()
{
signal( SIGUSR1, sigHandler );
semTake( semId, WAIT_FOREVER );
printf("000000000\n");
return OK;
}
void sigHandler(int sig)
{
if( sig != SIGUSR1 )
{
logMsg( "sigHandler : Invalid sig %d\n", sig, 0, 0, 0, 0, 0 );
}
logMsg( "sigHandler is running in %s 's context!\n", (int)taskName(taskIdSelf()), 0, 0, 0, 0, 0 );
}
STATUS txSignal()
{
kill( tidsigRx, SIGUSR1 );
return OK;
}
STATUS progStop()
{
taskDelete( tidsigRx );
semDelete(semId);
printf("Bye bye!!!\n");
return OK;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -