我有Tcl_DeleteInterp()API(在solaris上)的一些問題。我在我的應用程序中使用了這個Tcl_DeleteInterp()來刪除解釋器。我發現的奇怪的事情是使用此API的過程掛起大約20分鐘。我用truss命令附加了這個過程,發現這個過程繼續執行下面的函數將近20分鐘。瞭解Tcl_DeleteInterp()API
15.6541 0.0002 -> libtcl8.4:Tcl_DeleteInterp(0x41748, 0x0, 0x0, 0x0)
15.6580 0.0039 -> libc:free(0x288f8, 0x0, 0x0, 0x0)
15.6583 0.0003 -> libc:mutex_unlock(0xff0424e8, 0x0, 0x0, 0x0)
15.6584 0.0001 <- libc:free() = 0
15.6588 0.0004 -> libc:free(0x474b0, 0x0, 0x0, 0x0)*
...
...
有人可以幫我解釋爲什麼函數Tcl_DeleteInterp調用這些函數嗎? 我也檢查了爲Tcl_DeleteInterp()完成的實現,但沒有找到任何線索。
感謝
感謝您的回答Donal – sakthivp