【关键字】 tclsh tkcon socket fileevent
1,在学习socket 的时候,发现在tkcon中正常运行的程序,在tclsh中不能正常运行后来发现,一些回调函数在tclsh中不能够正确的运行如,socekt -server callback,这里的callback不能够执行,还有针对于socket的注册的一些fileevent不能够很好的执行。
2,解决在注册事件后,vwait forever来等待事件的发生就可以执行。
--- 2011-0514 -更正一下
原来不是支持的好不好的问题,就是不支持,在doc中讲述after 命令的时候有这么一句话:
tclsh 不是事件驱动的 写道
The after ms and after idle forms of the command assume that the application is event driven: the delayed commands will not be executed unless the application enters the event loop. In applications that are not normally event-driven, such as tclsh, the event loop can be entered with the vwait and update commands.
所以才有上面的问题,after和fileevent都是一样的注册事件的。
能够用after 2000 {puts xxx};puts yyy这个命令很好的测试这个,在tkcon中yyy先输出,随后xxx输出;而在tclsh中yyy输出,等好久xxx也不会输出,知道你输入vwait 或者update。
分享到:
相关推荐
《WIND_MEDIA_LIBRARY_3_0_3patch.rar_TCLSH.E》是一个针对WIND_MEDIA_LIBRARY_v3.0.3的补丁包,主要用于解决或优化该媒体库软件在使用过程中可能遇到的问题和性能。补丁是软件更新的一种形式,通常包含对原有代码的...
在Linux环境中,有时我们需要在没有网络连接的情况下安装特定版本的软件。在这种场景下,手动下载解压包并离线安装成为必要的操作。本压缩包"expect5.45.4和tcl8.4.11.rar"包含了 Expect 5.45.4 和 Tcl 8.4.11 的...
在Unix终端中,使用tclsh或tclsh8.5命令来启动Tcl shell。在实际使用中,为了提高效率,推荐使用tkcon这样的小型且方便的Tcl终端。 总的来说,Tcl/Tk学习笔记覆盖了从基础语法到高级用法的广泛主题,以及如何将这些...
- 使用命令提示符窗口中的`Tclsh85 first.tcl`命令运行该脚本。 ### Tcl混淆器的使用 Tcl混淆器是TclDevKit的一部分,用于将原始Tcl脚本混淆,以保护知识产权。混淆后的脚本难以阅读和理解,但仍然可以正常执行。...
通过理解tclsh的基本用法、掌握Tcl命令库中的各种命令以及了解Tk的图形用户界面组件,开发者可以构建出功能丰富、界面友好的应用程序。此外,[incr Tcl]、[incr Tk]和[incr Widgets]的引入进一步增强了Tcl/Tk的能力...
6. **事件驱动编程**:TCL支持事件模型,允许程序在特定事件发生时执行特定的代码,这对于GUI应用和网络编程特别有用。 7. **扩展机制**:TCL8.4.14可以与其他语言(如C或C++)进行紧密集成,允许创建新的命令或...
Eclipse是一个广泛使用的开源集成开发环境,支持多种编程语言,包括Java、C/C++以及TCL等,它提供了一整套的开发工具,如代码编辑器、构建工具和调试器等。 源码分析: 1. **SQLite3的TCL接口**:SQLite3的TCL扩展...
如果您还没有安装Eclipse,可以从官方网站下载并安装最新版本的Eclipse。 二、安装Active TCL开发环境 1. 安装Active TCL开发环境,访问http://www.activestate.com/activetcl/downloads页面,下载对应的Active ...
如果平台不支持Tcl,将`tclsh83.exe`复制到NetSim目录,以供NS2.exe调用。 3. **编译Tk 8.3.2**: - 同样修改`c:\ns2\tk8.3.2\win\makefile.vc`,更新TOOLS32、TOOLS32_rc、TCLDIR和INSTALLDIR的路径。 - 切换到`...
1、安装完毕以后,进入tcl源代码的根目录,把子目录unix下面的tclUnixPort.h copy到子目录generic中。 2、暂时不要删除tcl源代码,因为expect的安装过程还需要用。 (二)expect 安装 (需Tcl的库) 主页: ...
TCL的解释器名为`tclsh`,同时也是一个shell环境,支持类似于C语言的数据类型和控制结构,这使得TCL既适合用于快速原型设计,也能处理复杂的任务。 #### 二、TCL的应用领域 1. **系统命令控制**:最初设计用于简化...
5. **事件驱动机制**:TCL支持基于Socket和文件的事件驱动操作,同时也支持基于时间和用户定义的事件。 6. **动态领域定义**:TCL允许动态地定义新的领域,增强了语言的灵活性。 7. **易于扩展**:可以通过C、C++或...
这个压缩包“Tcl8 windows版-windows支持expect-用28M那个.rar”显然包含了适用于Windows操作系统的Tcl8版本,特别强调了它支持“expect”模块。 Expect是Nathan Torkington在1993年为Unix系统开发的一个扩展,后来...
- **事件绑定与处理**:TCL/TK支持对各种事件进行绑定,如键盘按键、鼠标点击等,可以定义事件发生时执行的函数。 - **按钮Widget**:用于创建具有用户交互功能的按钮,可以设置文本、命令等属性。 - **Canvas ...
我们可以通过`source`命令让`tclsh`从文件中读取命令。让我们再次让TCL读取我们的程序: ```bash % source hello.tcl Hello World % exit $ ``` `exit`命令使TCL shell结束并返回到操作系统提示符。 #### TCL命令...
在NS2中添加路由协议的知识点不仅限于以上所述,还需要熟悉网络协议的工作原理、理解NS2的事件驱动模型、掌握C++和OTcl编程,以及具备一定的调试技巧。这个过程可能涉及到深入学习现有的路由协议,如OSPF、RIP或BGP...
5. **事件驱动机制**:TCL支持基于Socket和文件的事件驱动,同时也支持基于时间或用户定义的事件触发机制。 6. **动态域定义**:允许开发者在运行时定义新的命令或修改现有命令的行为。 7. **易于扩展**:可以通过C...
tclsh仅支持TCL命令,而wish则同时支持TCL和Tk命令,允许用户实时执行和查看结果。此外,TCL/Tk的跨平台特性也是一个显著优点,能在多个操作系统如UNIX、Windows和Macintosh上运行,且命令保持一致,仅在启动方式上...