2016-12-19 136 views
2

此功能睡眠x秒,是否有更好的睡眠功能,可能是更少的行数或使用更少的内存(例如没有“扩展”行)?睡眠功能(睡眠时间x秒)(Maxima)

此外,它可能更准确,但对于我的需要,准确性已足够。
编辑:我的主要用途是为了在创建主视窗时查看图像的短暂延迟。

我知道'?\ * autoconf \ -version \ *;'可以给出Maxima版本号,所以也许有一些没有记录的方式在一段时间内睡觉。

sleep(x) := for i : 1 do 
(
if (i = 1) then (t:elapsed_real_time()), 
if (elapsed_real_time() - t >= x) then return(), 
expand ((a + b)^500) 
)$ 

来测试睡眠功能:

print(0, timedate())$ 
sleep(1)$ 
print(1, timedate())$ 
sleep(2)$ 
print(2, timedate())$ 
sleep(3)$ 
print(3, timedate())$ 
sleep(4)$ 
print(4, timedate())$ 
sleep(5)$ 
print(5, timedate())$ 

编辑2:一些有用的代码(原始问题解决)

:lisp (sleep 1) 
?sleep(1)$ 
?sleep(1); 
sleep(x) := ?sleep(x); 

EDIT 3:一些有用的链接

[Lisp的和Maxima]
Maxima 5.39.0手册:37.程序流程
http://maxima.sourceforge.net/docs/manual/maxima_37.html

【如何抑制口齿不清函数的输出]
千里马 - 基于DOE-MACSYMA /邮件列表GPL CAS
https://sourceforge.net/p/maxima/mailman/message/33016361/

回答

3

千里马Lisp语言编写的,你可以使用一个口齿不清命令:

:lisp (sleep 1) 
+0

非常感谢你,非常感谢! – vafylec

+0

我发现'lisp(sleep 1)'有效,但如果它是键入控制台的第一件事情,它会挂起状态栏消息:'Reading maxima output','?sleep(1)$'没有这个问题 – vafylec