Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <stdio.h>
- #include "kernel.h"
- #include <time.h>
- mailbox *mb;
- void task3();
- void task1(){
- char data2;
- printf("Data2 success %d \n", receive_wait(mb, &data2));
- if(data2%2 == 0){
- create_task(task3, ticks()+20);}
- else{printf("Data2: %d \n", &data2);}
- terminate();
- }
- void task2(){
- int data = 1;
- int i;
- for(i = 0; i < 100; i++){
- printf("Task1 success %d \n", send_wait(mb, &data));
- data = rand() %100 + 1;
- create_task(task1, ticks()+20);
- wait(5000);
- }
- terminate();
- }
- void task3(){
- char data3;
- printf(" Data3 Success: %d \n", receive_wait(mb, &data3));
- printf("Data3: %d \n", &data3);
- terminate();
- }
- int main()
- {
- if(init_kernel() != 1){
- while(1);
- }
- create_task(task2, 150);
- srand(time(NULL));
- mb = create_mailbox(2, sizeof(int));
- if(mb == NULL){
- while(1);
- }
- run();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement