gpt4 book ai didi

sockets - tcl/tk-我们可以将tcl标准输出重定向到套接字吗?

转载 作者:行者123 更新时间:2023-12-03 11:53:20 24 4
gpt4 key购买 nike

我试图将我的stdoutstderr输出重定向到文本小部件,并且我尝试使用Memchan做到了,但确实做到了not work

我们正在考虑的下一个选项是使用套接字。我们可以将tcl stdout重定向到套接字吗?如果是,您是否可以提供示例代码来说明这一点?

最佳答案

您可以在子流程中运行吗?如果可以,这很容易:

socket -server accept 12345   ;# pick your own port number...
proc accept {channel host port} {
exec [info nameofexecutable] realScript.tcl \
<@$channel >@$channel 2>@$channel &
}
vwait forever ;# run the event loop to serve sockets...

这将启动一个Tcl子进程,为每个传入的套接字连接执行 realScript.tcl,并安排将stdin( <@)stdout( >@)和stderr( 2>@)重定向到套接字。它还在后台运行子进程(最终 &),以便不阻止传入的连接。 (您可能需要在运行子进程之前检查 $host$port的可接受性。)

更好的是,在子过程中,Tcl仍会自动检测到它正在处理套接字。 fconfigure命令将能够看到套接字配置(当然,即使它不能更改与之通信的端口)。

关于sockets - tcl/tk-我们可以将tcl标准输出重定向到套接字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5973681/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com