1bfe73648SShuo Chen#include "EventLoop.h" 2bfe73648SShuo Chen#include <stdio.h> 3bfe73648SShuo Chen 4bfe73648SShuo Chenmuduo::EventLoop* g_loop; 5bfe73648SShuo Chenint g_flag = 0; 6bfe73648SShuo Chen 7bfe73648SShuo Chenvoid run4() 8bfe73648SShuo Chen{ 9bfe73648SShuo Chen printf("run4(): pid = %d, flag = %d\n", getpid(), g_flag); 10bfe73648SShuo Chen g_loop->quit(); 11bfe73648SShuo Chen} 12bfe73648SShuo Chen 13bfe73648SShuo Chenvoid run3() 14bfe73648SShuo Chen{ 15bfe73648SShuo Chen printf("run3(): pid = %d, flag = %d\n", getpid(), g_flag); 16bfe73648SShuo Chen g_loop->runAfter(3, run4); 17bfe73648SShuo Chen g_flag = 3; 18bfe73648SShuo Chen} 19bfe73648SShuo Chen 20bfe73648SShuo Chenvoid run2() 21bfe73648SShuo Chen{ 22bfe73648SShuo Chen printf("run2(): pid = %d, flag = %d\n", getpid(), g_flag); 23bfe73648SShuo Chen g_loop->queueInLoop(run3); 24bfe73648SShuo Chen} 25bfe73648SShuo Chen 26bfe73648SShuo Chenvoid run1() 27bfe73648SShuo Chen{ 28bfe73648SShuo Chen g_flag = 1; 29bfe73648SShuo Chen printf("run1(): pid = %d, flag = %d\n", getpid(), g_flag); 30bfe73648SShuo Chen g_loop->runInLoop(run2); 31bfe73648SShuo Chen g_flag = 2; 32bfe73648SShuo Chen} 33bfe73648SShuo Chen 34bfe73648SShuo Chenint main() 35bfe73648SShuo Chen{ 36bfe73648SShuo Chen printf("main(): pid = %d, flag = %d\n", getpid(), g_flag); 37bfe73648SShuo Chen 38bfe73648SShuo Chen muduo::EventLoop loop; 39bfe73648SShuo Chen g_loop = &loop; 40bfe73648SShuo Chen 41bfe73648SShuo Chen loop.runAfter(2, run1); 42bfe73648SShuo Chen loop.loop(); 43bfe73648SShuo Chen printf("main(): pid = %d, flag = %d\n", getpid(), g_flag); 44bfe73648SShuo Chen} 45