- #include <stdio.h>
- #include <unistd.h>
- #define TIME_SLICE 1000 // 时间片大小,单位为毫秒
- // 定义两个简单的任务
- void task1() {
- printf("Task 1 is running...\n");
- usleep(TIME_SLICE * 1000 / 2); // 任务执行一半的时间
- printf("Task 1 is running...\n");
- usleep(TIME_SLICE * 1000 / 2); // 任务执行剩余的时间
- }
- void task2() {
- printf("Task 2 is running...\n");
- usleep(TIME_SLICE * 1000 / 2); // 任务执行一半的时间
- printf("Task 2 is running...\n");
- usleep(TIME_SLICE * 1000 / 2); // 任务执行剩余的时间
- }
- int main() {
- int count = 5; // 运行5个时间片
- // 轮流执行任务,每个任务执行一个时间片
- while (count > 0) {
- task1(); // 执行任务1
- task2(); // 执行任务2
- count--;
- }
- return 0;
- }
|