c语言无限循环时能限速吗,c语言时间限制
满意答案
a75481344
2015.07.08
采纳率:43% 等级:12
已帮助:10086人
" 运行一个语句一段时间(如3分钟)。" --
这个语句 或程序块 需要 的执行 时间 是多少?
如果 这个 语句 或程序块 执行 需要 的 时间 长于 3 分钟,那么 这个 语句 或程序块 中 需要 嵌入 时间 测定 语句。
如果 时间 短于 3 分钟,你需要 加入 等待。
----------
等待函数:
void wait_ms ( int ms )
{
clock_t endwait;
endwait = clock () + ms;
while (clock() < endwait) {}
}
c 语言 时间:
clock_t t0, t1,t;
int dt;
dt = 3*60*1000; // 3分钟 == 毫秒数
if ( 满足条件了){
t0 = clock (); //开始时刻 毫秒
t1 = t0 + dt; //目标终止 时刻
这里执行语句或程序块,假定 时间 短于 3 分钟
t = t1 - clock (); // 等待时间 毫秒数
wait_ms(t); // 等待
}
===============
执行语句或程序块,假定 时间 长于 3 分钟 , 执行语句或程序块中要 嵌入:
t = clock();
比较 t 与 目标 t1 , if (t>=t1) 终止 程序。
===================================
一般这类程序 要用 c++ . 定时控制 用 timer ( 定时器) 或
运行 线程:
std::thread xc1 (foo,t0,3);
时间控制,到时间则 关闭线程。
00分享举报
满意答案 a75481344 2015.07.08 采纳率:43% 等级:12 已帮助:10086人 " 运行一个语句一段时间(如3分钟)。" -- 这个语句 或程序块 需要 的执行 时间 是多少? 如果 这个 语句 或程序块 执行 需要 的 时间 长于 3 分钟,那么 这个 语句 或程序块 中 需要 嵌入 时间 测定 语句。 如果 时间 短于 3 分钟,你需要 加入 等待。 ---------- 等待函数: void wait_ms ( int ms ) { clock_t endwait; endwait = clock () + ms; while (clock() < endwait) {} } c 语言 时间: clock_t t0, t1,t; int dt; dt = 3*60*1000; // 3分钟 == 毫秒数 if ( 满足条件了){ t0 = clock (); //开始时刻 毫秒 t1 = t0 + dt; //目标终止 时刻 这里执行语句或程序块,假定 时间 短于 3 分钟 t = t1 - clock (); // 等待时间 毫秒数 wait_ms(t); // 等待 } =============== 执行语句或程序块,假定 时间 长于 3 分钟 , 执行语句或程序块中要 嵌入: t = clock(); 比较 t 与 目标 t1 , if (t>=t1) 终止 程序。 =================================== 一般这类程序 要用 c++ . 定时控制 用 timer ( 定时器) 或 运行 线程: std::thread xc1 (foo,t0,3); 时间控制,到时间则 关闭线程。 00分享举报