当前位置:网站首页>【plang 1.4.3】定时器的使用
【plang 1.4.3】定时器的使用
2022-08-02 03:30:00 【ChivenZhang】
以下代码,演示如何使用plang脚本的定时器功能。
import std::IO;
import std::Type;
import std::time::Timer;
import std::time::Task;
import std::time::Timeout;
class Task1 : Task
{
public Task1(){}
public run(){
IO.printf("@ ");
}
}
class Task2 : Task
{
public Task2(){}
public run(){
IO.printf("# ");
}
}
class Test
{
public static main()
{
t->Timer=new Timer(100);
co_start t.start(new Task1(), 6);
co_start t.start(new Task2(), 3);
i->int=0;
while(i++<10)
{
Timeout.sleep(100);
IO.printf("* ");
}
}
}编译完成执行:plang -c Test
输出(可能情况):
情形1:

情形2:

情形3:

解释:代码中使用std::Timer定时器执行两个Task任务,由于采用了co_start原语进行协程分发,所以结果呈现为异步执行。
Plang语言介绍参考:Plang编程语言
边栏推荐
猜你喜欢
随机推荐
【nRF24L01 connects with Arduino to realize wireless communication】
树莓派4B打开文件管理时出现闪退
所有子字符串中的元音 —— LeetCode - 2063
树莓派入门(1)系统镜像烧录
[Arduino connected to GPS module (NEO-6M) to read positioning data]
引擎开发日志:集成Bullet3物理引擎
基于阿里云OSS+PicGo的个人图床搭建
[Spark]-RDD详解之变量&操作
AD8361检波器
I2C无法访问ATEC508A加密芯片问题
如何在 Scala 中科学地操作 collection(一):集合类型与操作
远程调试PLC,到底如何操作?
【opencv】error: (-215:Assertion failed) ssize.empty() in function ‘cv::resize‘报错原因
如何快速搭建属于自己的物联网平台?
《scala 编程(第3版)》学习笔记4
基于树莓派的智能箱包开发环境搭建
物联网方案
使用批处理脚本修改hosts文件
How to quickly build your own IoT platform?
2019 - ICCV - 图像修复 Image Inpainting 论文导读《StructureFlow: Image Inpainting via Structure-aware ~~》









