⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 roundrobin.c

📁 嵌入式VxWorks开发所需典型例程源代码
💻 C
字号:
/* tdemo.c - demonstration program */

#include "vxWorks.h"
#include "stdio.h"
#include "stdlib.h"
#include "msgQLib.h"
#include "taskLib.h"

#define WAIT_TIME 60
#define MSG_TIME_OUT 60


int		tidroProducer;
int		tidroConsumer;



int		roconsumer();
int		roproducer();


/*
 * tDemoStart() - start tdemo
 */

int d=0;

SEM_ID semId;

void rodemoPrint(void){
logMsg("\nThis is demoPrint\n");
}


int roundRobin() 
{
	
       /* Spawn Producer Task */
/*semId=semCCreate(SEM_Q_PRIORITY,1);

semGive(semId);*/


    kernelTimeSlice(0);

    tidroProducer = taskSpawn("ttProducer", 80, 0, 2000, (FUNCPTR)roproducer,
	      0,0,0,0,0,0,0,0,0,0);
    
    /* Spawn Consumer Task */
    tidroConsumer = taskSpawn("ttConsumer", 80, 0, 2000, (FUNCPTR)roconsumer,
	      0,0,0,0,0,0,0,0,0,0);
    
    return (OK);
}


/*
 * producer() - producer task
 */
STATUS roproducer (void) 
{
  
   while(1) {
	/*semTake(semId,WAIT_FOREVER);*/
	printf("\nThis is producer\n");
        taskDelay(0);

    }
}


/*
 * consumer() - consumer task
 */
STATUS roconsumer(void)
{
    while(1) {
    printf("\nThis is consumer outPut\n");
    taskDelay(0);
    }
}

/*
 * tDemoStop() - Stop tdemo
 */
STATUS runStop() 
{

    /* delete tasks */
    taskDelete (tidroProducer);
   
    taskDelete (tidroConsumer);
    
return(OK);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -