`

tclsh中的事件支持没有tkcon中好

阅读更多

【关键字】 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_3_0_3patch.rar_TCLSH.E》是一个针对WIND_MEDIA_LIBRARY_v3.0.3的补丁包,主要用于解决或优化该媒体库软件在使用过程中可能遇到的问题和性能。补丁是软件更新的一种形式,通常包含对原有代码的...

    两者兼容版本附详细带图安装文档:expect5.45.4和tcl8.4.11.rar

    在Linux环境中,有时我们需要在没有网络连接的情况下安装特定版本的软件。在这种场景下,手动下载解压包并离线安装成为必要的操作。本压缩包"expect5.45.4和tcl8.4.11.rar"包含了 Expect 5.45.4 和 Tcl 8.4.11 的...

    tcl8.4.14版本下载 TCL8414-SRC.ZIP

    6. **事件驱动编程**:TCL支持事件模型,允许程序在特定事件发生时执行特定的代码,这对于GUI应用和网络编程特别有用。 7. **扩展机制**:TCL8.4.14可以与其他语言(如C或C++)进行紧密集成,允许创建新的命令或...

    Tcl/Tk培训手册(1)

    - 使用命令提示符窗口中的`Tclsh85 first.tcl`命令运行该脚本。 ### Tcl混淆器的使用 Tcl混淆器是TclDevKit的一部分,用于将原始Tcl脚本混淆,以保护知识产权。混淆后的脚本难以阅读和理解,但仍然可以正常执行。...

    tcl/tk softeware reference

    通过理解tclsh的基本用法、掌握Tcl命令库中的各种命令以及了解Tk的图形用户界面组件,开发者可以构建出功能丰富、界面友好的应用程序。此外,[incr Tcl]、[incr Tk]和[incr Widgets]的引入进一步增强了Tcl/Tk的能力...

    sqlite3的tcl扩展源码eclipse工程

    Eclipse是一个广泛使用的开源集成开发环境,支持多种编程语言,包括Java、C/C++以及TCL等,它提供了一整套的开发工具,如代码编辑器、构建工具和调试器等。 源码分析: 1. **SQLite3的TCL接口**:SQLite3的TCL扩展...

    TCL脚本在eclipse环境搭建

    如果您还没有安装Eclipse,可以从官方网站下载并安装最新版本的Eclipse。 二、安装Active TCL开发环境 1. 安装Active TCL开发环境,访问http://www.activestate.com/activetcl/downloads页面,下载对应的Active ...

    ns2.26安装说明

    如果平台不支持Tcl,将`tclsh83.exe`复制到NetSim目录,以供NS2.exe调用。 3. **编译Tk 8.3.2**: - 同样修改`c:\ns2\tk8.3.2\win\makefile.vc`,更新TOOLS32、TOOLS32_rc、TCLDIR和INSTALLDIR的路径。 - 切换到`...

    tcl864安装包

    1、安装完毕以后,进入tcl源代码的根目录,把子目录unix下面的tclUnixPort.h copy到子目录generic中。 2、暂时不要删除tcl源代码,因为expect的安装过程还需要用。 (二)expect 安装 (需Tcl的库) 主页: ...

    TCL 入门资料 中文,知名软件公司培训资料,易懂 易入门

    TCL的解释器名为`tclsh`,同时也是一个shell环境,支持类似于C语言的数据类型和控制结构,这使得TCL既适合用于快速原型设计,也能处理复杂的任务。 #### 二、TCL的应用领域 1. **系统命令控制**:最初设计用于简化...

    TCL例子,可以很好的学习TLC语言

    5. **事件驱动机制**:TCL支持基于Socket和文件的事件驱动操作,同时也支持基于时间和用户定义的事件。 6. **动态领域定义**:TCL允许动态地定义新的领域,增强了语言的灵活性。 7. **易于扩展**:可以通过C、C++或...

    Tcl8 windows版-windows支持expect-用28M那个.rar

    这个压缩包“Tcl8 windows版-windows支持expect-用28M那个.rar”显然包含了适用于Windows操作系统的Tcl8版本,特别强调了它支持“expect”模块。 Expect是Nathan Torkington在1993年为Unix系统开发的一个扩展,后来...

    tcl-tk-reference-guide.pdf

    - **事件绑定与处理**:TCL/TK支持对各种事件进行绑定,如键盘按键、鼠标点击等,可以定义事件发生时执行的函数。 - **按钮Widget**:用于创建具有用户交互功能的按钮,可以设置文本、命令等属性。 - **Canvas ...

    Tool_Command_Language

    我们可以通过`source`命令让`tclsh`从文件中读取命令。让我们再次让TCL读取我们的程序: ```bash % source hello.tcl Hello World % exit $ ``` `exit`命令使TCL shell结束并返回到操作系统提示符。 #### TCL命令...

    在NS2中添加路由协议(整理).zip_NS2 路由协议_NS2添加新协议_NS2路由协议_在ns2中添加路由的方法_路由

    在NS2中添加路由协议的知识点不仅限于以上所述,还需要熟悉网络协议的工作原理、理解NS2的事件驱动模型、掌握C++和OTcl编程,以及具备一定的调试技巧。这个过程可能涉及到深入学习现有的路由协议,如OSPF、RIP或BGP...

    Tool Command Language

    - **事件驱动机制**:支持基于时间或特定事件触发的处理机制,如网络通信中的Socket事件。 - **动态域定义**:支持动态地定义和管理域环境。 - **易于扩展**:可以通过C/C++或Java等语言进行扩展,以实现更高级的...

    01_Dai_ 1.Tcl_Tk 快速上手

    - **MacOSX**:同样在终端中输入`$tclsh hello.tcl`运行程序。 3. **图形界面的Hello World**: - 使用`wish`命令代替`tclsh`来运行带有Tk的脚本。 - 示例脚本:`pack [button .btn -text "HelloTk!!" -command ...

    TCL编程说明文档

    5. **事件驱动机制**:TCL支持基于Socket和文件的事件驱动,同时也支持基于时间或用户定义的事件触发机制。 6. **动态域定义**:允许开发者在运行时定义新的命令或修改现有命令的行为。 7. **易于扩展**:可以通过C...

    【转】TCL集成开发环境搭建

    tclsh仅支持TCL命令,而wish则同时支持TCL和Tk命令,允许用户实时执行和查看结果。此外,TCL/Tk的跨平台特性也是一个显著优点,能在多个操作系统如UNIX、Windows和Macintosh上运行,且命令保持一致,仅在启动方式上...

Global site tag (gtag.js) - Google Analytics