static void Task1(long t) { int unsent; rt_printk("\nTask1 (%p) starting\n", rt_whoami()); while (count < MAXCOUNT) { count++; unsent = rt_tbx_send(&bx, msg1, sizeof(msg1)); rt_printk("\nTask1=%lu, simple sending, unsent=%d %d\n", count, unsent, sizeof(msg1)); rt_sleep(nano2count(DELAY)); } rt_printk("\nTask1 suspends itself\n"); rt_task_suspend(rt_whoami()); }
static void Task1(long t) { int unsent; MSG msg; rt_printk("\nTask1 (%p) starting\n", rt_whoami()); while (count < MAXCOUNT) { count++; msg.progressive = count; msg.sending_task = 1; unsent = rt_tbx_send(&bx, (char*)&msg, sizeof(msg)); rt_printk("\nTask1=%lu, simple sending, unsent=%d\n", count, unsent); rt_sleep(nano2count(DELAY)); } rt_printk("\nTask1 suspends itself\n"); rt_task_suspend(rt_whoami()); }
static void *Task1(void *arg) { RT_TASK *t1; int unsent; MSG msg; t1 = rt_task_init_schmod(nam2num("T1"), BASE_PRIO + 1, 0, 0, SCHED_FIFO, 0xF); printf("\nTask1 (%p) starting\n", t1); mlockall(MCL_CURRENT | MCL_FUTURE); while (count < MAXCOUNT) { count++; msg.progressive = count; msg.sending_task = 1; unsent = rt_tbx_send(bx, (char*)&msg, sizeof(msg)); printf("\nTask1=%lu, simple sending, unsent=%d\n", count, unsent); rt_sleep(nano2count(DELAY)); } rt_task_delete(t1); printf("\nTask1 ends itself\n"); return 0; }