任务多了,肯定要考虑任务之间的通信,好比linux上的进程间通信。
如下3个任务,任务1实现键盘驱动,获取用户输入,将输入的字符分成两组”wsad”的对应贪食蛇的按键,发消息给消息队列1,
“上下左右”对应的是俄罗斯方块的按键,发消息给队列2。
贪食蛇游戏是任务2,运行是从消息队列1获取消息,处理按键,俄罗斯方块是任务3,从消息队列2获取消息。
运行截图如下,左边是贪食蛇游戏,右边是俄罗斯方块,两个游戏可以同时玩,”wsad”键控制贪食蛇,”上下左右”控制俄罗斯方块:
代码下载: FunnyOS_game.zip
git地址:https://github.com/fillzero/FunnyOS