这篇教程C++ taskSpawn函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中taskSpawn函数的典型用法代码示例。如果您正苦于以下问题:C++ taskSpawn函数的具体用法?C++ taskSpawn怎么用?C++ taskSpawn使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了taskSpawn函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: mainint main(int argc, char *const argv[]){ TASK_ID rtid, ptid; traceobj_init(&trobj, argv[0], sizeof(tseq) / sizeof(int)); traceobj_mark(&trobj, 11); rtid = taskSpawn("rootTask", 50, 0, 0, rootTask, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); traceobj_assert(&trobj, rtid != ERROR); traceobj_mark(&trobj, 12); ptid = taskSpawn("peerTask", 51, 0, 0, peerTask, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); traceobj_assert(&trobj, ptid != ERROR); traceobj_mark(&trobj, 13); traceobj_join(&trobj); traceobj_verify(&trobj, tseq, sizeof(tseq) / sizeof(int)); exit(0);}
开发者ID:ChunHungLiu,项目名称:xenomai,代码行数:27,
示例2: simulatorvoid simulator(){ initiateProcess(); oldSensors = getSensorValues(); /*create both message queues*/ if ((gateInQueue = msgQCreate(MAX_MESSAGES, MAX_MESSAGE_LENGTH, MSG_Q_FIFO)) == NULL) printf("msgQCreate failed for read to gate in queue/n"); if ((gateOutQueue = msgQCreate(MAX_MESSAGES, MAX_MESSAGE_LENGTH, MSG_Q_FIFO)) == NULL) printf("msgQCreate failed for update to gate out queue/n"); if((taskSpawn("TASK 0",70,0x100,2000,(FUNCPTR)inputWatcher,0,0,0,0,0,0,0,0,0,0))== ERROR) { printf("Error spawning input watcher task./n"); } /*TASK 1 = gate in*/ if((taskSpawn("GATE IN",70,0x100,2000,(FUNCPTR)gateIn,0,0,0,0,0,0,0,0,0,0))== ERROR) { printf("Error spawning gateIn task./n"); } /*TASK 2 = gate out*/ if((taskSpawn("GATE OUT",70,0x100,2000,(FUNCPTR)gateOut,0,0,0,0,0,0,0,0,0,0))== ERROR) { printf("Error spawning gateOut task./n"); }}
开发者ID:silvanoc109,项目名称:CEC450_TeamC_ParkingLot,代码行数:30,
示例3: s4_msgq2void s4_msgq2(void){ int taskIdOne; int taskIdTwo; if ((msgQueueId = msgQCreate(MAX_MESSAGES, MAX_MESSAGE_LENGTH, MSG_Q_FIFO)) == NULL) { printf("msgQCreate in failed./n"); } if ((msgQueueIdNew = msgQCreate(MAX_MESSAGES, MAX_MESSAGE_LENGTH, MSG_Q_FIFO)) == NULL) { printf("msgQCreate in failed./n"); } if ((taskIdOne = taskSpawn("task1", PRI, 0, 2000, (FUNCTION)taskOne, 1, 2, 3, 4, 5)) == ERROR) { printf("taskSpawn taskOne failed./n"); } if ((taskIdTwo = taskSpawn("task2", PRI, 0, 2000, (FUNCTION)taskTwo, 1, 2, 3, 4, 5)) == ERROR) { printf("taskSpawn taskTwo failed./n"); }}
开发者ID:anders007,项目名称:vxworks-like-kernel,代码行数:29,
示例4: RunProgram/*** Routine Name: : RunProgram* Description : Start point of the program* Returns : n/a* Parameters : n/a* */void RunProgram(void){ int taskID; int portNumber; memset ((void *)&globalData, 0, sizeof(globalData)); //telnetServer("50000"); portNumber = 50000; taskID = taskSpawn("telnetServer", 100, // priority VX_FP_TASK, // floating point C++ context save 64000, // stack size (FUNCPTR) telnetServer, // function to be called portNumber, // port number 0,0,0,0,0,0,0,0,0); // parameters (unused) portNumber = 50001; taskID = taskSpawn("telnetServer", 100, // priority VX_FP_TASK, // floating point C++ context save 64000, // stack size (FUNCPTR) telnetServer, // function to be called portNumber, // port number 0,0,0,0,0,0,0,0,0); // parameters (unused)}
开发者ID:jdgdeveloper,项目名称:base,代码行数:34,
示例5: mainvoid main (void){ /* Add your code here: create tasks, semaphores, ... */ initHardware(0); analogInputs = semBCreate (SEM_Q_PRIORITY, SEM_FULL); writeDisplay = semBCreate (SEM_Q_PRIORITY, SEM_FULL); int readInputsID; readInputsID = taskSpawn ("readInputs", 150, 0,0x1000,(FUNCPTR) readInputs,0,0,0,0,0,0,0,0,0,0); int showInputsID; showInputsID = taskSpawn ("showInputs", 160, 0,0x1000,(FUNCPTR) showInputs,0,0,0,0,0,0,0,0,0,0); int readKeyboardID; readKeyboardID = taskSpawn ("readKeyboard", 170, 0,0x1000,(FUNCPTR) readKeyboard,0,0,0,0,0,0,0,0,0,0); int timerID; timerID = taskSpawn ("timer", 140, 0,0x1000,(FUNCPTR) timer,0,0,0,0,0,0,0,0,0,0); int tcpServerID; tcpServerID = taskSpawn ("tcpServer", 200, 0,0x1000,(FUNCPTR) tcpServer,0,0,0,0,0,0,0,0,0,0); printf("Hello World"); /* Suspend own task */ taskSuspend (0);} /* main */
开发者ID:dudomatik,项目名称:conveyor-belt,代码行数:30,
示例6: mainintmain(){ osInit(50); taskSpawn("t1", 100, 0, 1000, task, 200); taskSpawn("t2", 100, 0, 1000, task, 300); shellMainLoop(stdin, stdout, stderr, "task% "); return 0;}
开发者ID:openrobots,项目名称:pocolibs,代码行数:10,
示例7: nfs_startvoidnfs_start(char *pathtab_name){ FILE *fp; char path[PATH_MAX]; int id; if ((nfsd_task_id = taskSpawn("tNfsd", nfsd_task_priority, nfsd_task_options, nfsd_task_stacksize, nfsd, 0)) != ERROR && (mountd_task_id = taskSpawn("tMountd", mountd_task_priority, mountd_task_options, mountd_task_stacksize, mountd, 0)) != ERROR) { nfsd_debug("nfs_start: nfsd and mountd started OK/n"); if (!pathtab_name) return; nfsd_pathtab = symTblCreate(8, FALSE, memSysPartId); if (!nfsd_pathtab) { nfsd_debug("nfs_start: can't create nfsd_pathtab/n"); return; } if ((fp = fopen(pathtab_name, "r")) == 0) { symTblDelete(nfsd_pathtab); nfsd_debug("nfs_start: can't open pathtab file <%s>/n", pathtab_name); return; } while (fgets(nfsd_buffer, sizeof(nfsd_buffer), fp)) { sscanf(nfsd_buffer, "%s %d", path, &id); path_to_all_lower(path); if (symAdd(nfsd_pathtab, path, (char *) id, (SYM_TYPE) NFSD_MSDOS_TYPE, 0) == ERROR) { symTblDelete(nfsd_pathtab); nfsd_debug("nfs_start: can't add path <%s>/n", path); return; } nfsd_debug("nfs_start: added path <%s> id %x/n", path, id); } nfsd_debug("nfs_start: %d paths added to pathtab/n", nfsd_pathtab->nsymbols); } else { nfsd_debug("nfs_start: didn't work/n"); if (nfsd_task_id != ERROR) taskDelete(nfsd_task_id); }}
开发者ID:netdebug,项目名称:vxnfsd,代码行数:55,
示例8: s3_sem2void s3_sem2(void){ int taskIdOne; int taskIdTwo; semBinary = semBCreate(SEM_Q_FIFO, SEM_FULL); /*semTake(semBinary, WAIT_FOREVER); /* NOTE 2 */ taskIdOne = taskSpawn("task1", 90, 0, 2000, (FUNCTION)taskOne, 1, 2, 3, 4, 5); taskIdTwo = taskSpawn("task2", 90, 0, 2000, (FUNCTION)taskTwo, 1, 2, 3, 4, 5);}
开发者ID:anders007,项目名称:vxworks-like-kernel,代码行数:11,
示例9: mainvoid main (void){ unsigned char tempOut; /* Connect interrupt service routine to vector and all stuff */ intConnect (INUM_TO_IVEC(aioIntNum), my_ISR, aioIntNum); sysIntEnablePIC (aioIRQNum); /* Enable interrupts on the aio: * All interrupts and interrupt from counter 1 too */ tempOut = 0x24; sysOutByte (aioBase + intEnAddress, tempOut); /* Start counter 1 as timer with 50 ms period * It has a clock input of 1 MHz = 1 C++ task_alloc函数代码示例 C++ taskEXIT_CRITICAL函数代码示例
|