我有一个 receive.tcl 脚本,它只包含一个由一些 1KLOC 组成的 proc
puts "DEBUG_1"
proc Receive { arg1 arg2} {
puts "DEBUG_2"
... TCL Code
}
puts "DEBUG_3"
现在我需要在这么多不同的脚本中使用这个 proc Receive;让我们说; 1.tcl 2.tcl 3.tcl依此类推,所有这些1.tcl 2.tcl都是从 Master( Master.tcl) 调用的。
source PATH/receive.tcl是否有必要在每个等中包含/写入1.tcl 2.tcl;使用Receive.
或者
我可以从一些 Master( ) 脚本中调用“source PATH/receive.tcl” Master.tcl,它可以在任何1.tcl 2.tcl等等中进一步使用,而无需单独包含任何内容;TCL 解释器会存储/记住这个 proc Receive 并可以在任何进一步的脚本中使用吗?
问题:当我“$PATH/receive.tcl在每个1.tcl 2.tcl等等中而不是在Master.tcl;Master.tcl包含source $PATH/1.tcl source $PATH/2.tcl等等;然后我正在执行Master.tcl。
- 在第一次迭代中
1.tcl成功执行; - 口译员会进去
receive.tcl;它正在打印DEBUG_1,DEBUG_3并被成功proc Receive使用。1.tcl - 但是当解释器移动到
2.tcl它时发现source $PATH/receive.tcl - 口译员前往
receive.tcl - TCL一次又一次地崩溃;意味着我只能看到
DEBUG_1;之后的分段错误。