首页
开源
资讯
活动
开源许可证
软件工程云服务
软件代码质量检测云服务
持续集成与部署云服务
社区个性化内容推荐服务
贡献审阅人推荐服务
群体化学习服务
重睛鸟代码扫描工具
登录
注册
代码拉取完成,页面将自动刷新
Watch
37
Star
378
Fork
171
schuck
/
cola_os
Fork 仓库
加载中
取消
确认
代码
Issues
9
Pull Requests
1
Wiki
0
统计
更新失败,请稍后重试!
Issues
/
详情
移除标识
内容风险标识
本任务被
标识为内容中包含有代码安全 Bug 、隐私泄露等敏感信息,仓库外成员不可访问
Windows测试成功
待办的
#I5Q7QR
会飞的猪
创建于
2022-09-07 20:24
### 测试代码 main.c #include "stdio.h" #include <windows.h> #include <Mmsystem.h> #include "cola_os.h" LPTIMECALLBACK onTimeFunc(UINT wTimerID,UINT msg, DWORD dwUser,DWORD dw1,DWORD dw2) { cola_timer_ticker(); } MMRESULT Tick() { MMRESULT timer_id = timeSetEvent( 1, // 以毫秒指定事件的周期 1, // 精度, 默认1ms (LPTIMECALLBACK)onTimeFunc, // 回调函数地址 (DWORD)1, // 存放用户提供的回调数据 TIME_PERIODIC); // TIME_ONESHOT -- 执行一次; TIME_PERIODIC -- 周期性执行; return timer_id; } static task_t timer_500ms; static task_t timer_1s; static void timer_500ms_cb() { printf("500ms task running...\r\n"); } static void timer_1s_cb() { printf("1s task running...\r\n"); } int main() { MMRESULT timer_id=Tick(); cola_task_create(&timer_500ms,timer_500ms_cb,NULL); cola_timer_start(&timer_500ms,TIMER_ALWAYS,500); cola_task_create(&timer_1s,timer_1s_cb,NULL); cola_timer_start(&timer_1s,TIMER_ALWAYS,1000); while(1){ cola_task_loop(); } timeKillEvent(timer_id); // 释放定时器 return 0; } ### 测试效果 500ms task running... 1s task running... 500ms task running... 500ms task running... 1s task running... 500ms task running... 500ms task running... 1s task running... 500ms task running... 500ms task running... 1s task running... 500ms task running... ## 其他后面再玩
### 测试代码 main.c #include "stdio.h" #include <windows.h> #include <Mmsystem.h> #include "cola_os.h" LPTIMECALLBACK onTimeFunc(UINT wTimerID,UINT msg, DWORD dwUser,DWORD dw1,DWORD dw2) { cola_timer_ticker(); } MMRESULT Tick() { MMRESULT timer_id = timeSetEvent( 1, // 以毫秒指定事件的周期 1, // 精度, 默认1ms (LPTIMECALLBACK)onTimeFunc, // 回调函数地址 (DWORD)1, // 存放用户提供的回调数据 TIME_PERIODIC); // TIME_ONESHOT -- 执行一次; TIME_PERIODIC -- 周期性执行; return timer_id; } static task_t timer_500ms; static task_t timer_1s; static void timer_500ms_cb() { printf("500ms task running...\r\n"); } static void timer_1s_cb() { printf("1s task running...\r\n"); } int main() { MMRESULT timer_id=Tick(); cola_task_create(&timer_500ms,timer_500ms_cb,NULL); cola_timer_start(&timer_500ms,TIMER_ALWAYS,500); cola_task_create(&timer_1s,timer_1s_cb,NULL); cola_timer_start(&timer_1s,TIMER_ALWAYS,1000); while(1){ cola_task_loop(); } timeKillEvent(timer_id); // 释放定时器 return 0; } ### 测试效果 500ms task running... 1s task running... 500ms task running... 500ms task running... 1s task running... 500ms task running... 500ms task running... 1s task running... 500ms task running... 500ms task running... 1s task running... 500ms task running... ## 其他后面再玩
评论 (
0
)
会飞的猪
创建了
任务
登录
后才可以发表评论
状态
待办的
待办的
进行中
已完成
已关闭
负责人
未设置
标签
未设置
标签管理
里程碑
未关联里程碑
未关联里程碑
Pull Requests
未关联
未关联
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
未关联
未关联
master
开始日期   -   截止日期
-
置顶选项
不置顶
置顶等级:高
置顶等级:中
置顶等级:低
优先级
不指定
严重
主要
次要
不重要
参与者(1)