明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: nonsmall

[【不死猫】] 【原创】颠覆传统!纯Lisp也玩多线程开发!谜底揭晓!!!

    [复制链接]
发表于 2009-8-14 22:41:00 | 显示全部楼层

把vlx文件发出来吧,看动画不太明白,大伙在本机运行可能更好理解点

发表于 2009-8-15 08:16:00 | 显示全部楼层
是不是通过故意设置一个错误,使程序中断,再用vl-catch-apply系列函数捕捉错误,并重新启动对话框,如此不断循环。。。?
发表于 2009-8-15 11:11:00 | 显示全部楼层
看来快可以抄底了,随时用手机关注中,期待看到原理
 楼主| 发表于 2009-8-15 15:42:00 | 显示全部楼层

我在一楼更新提示,有兴趣的话请多思考,多尝试。

参考我之前的几篇研究文章,会有启示。

发表于 2009-8-15 16:56:00 | 显示全部楼层
对话框可以通过故意设置错误使程序中断,从而不断循环,但在命令行等待输入或进行屏幕选择时,却无法使程序中断(在没有鼠标或键盘的动作下)。或者也可以用同样的原理实现?
发表于 2009-8-15 19:44:00 | 显示全部楼层
又没具体的代码显示出来,又老吊胃口,抗议。。,本人拒绝再跟贴
发表于 2009-8-17 17:27:00 | 显示全部楼层
真是笑死人了,就你跟帖最勤快
发表于 2009-8-17 20:48:00 | 显示全部楼层

赞同楼上,将liminnet评为明经的水贴王子,你自己开放过几个源码?

按老猫的提示自己研究,不要喊叫,关键在于思考的过程,给了源码有啥意思。

发表于 2009-8-17 23:57:00 | 显示全部楼层

偶菜鸟一个,占个沙发看热闹哟

发表于 2009-8-18 09:07:00 | 显示全部楼层
本帖最后由 hhc 于 2013-10-6 10:15 编辑

Lisp的单线程其实跟CPU的工作原理很相似,因为在任一时刻,一个CPU只能处理一个数据,但由于操作系统的分配,使CPU能在多个任务间快速切换,看起来就好像多个任务同时进行,而Lisp不能直接调用API函数。变通的办法:在CAD2004中使用Grread时,只要在循环中加入一句(command "_.zoom" ...),即使鼠标及键盘没有任何动作,只要执行了这一句,Lisp就会认为发生了鼠标移动的操作,使得循环得以连续。这本是Lisp的一个bug,但对编制CAD游戏却是很需要的,但这个bug在CAD2007得到了一点纠正,必须将“工作空间”工具条打开并横向放置,才可连续。而且在CAD2008中,这个bug得到了彻底的纠正,不论怎样都不能连续。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 08:48 , Processed in 0.186704 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表