在smalltalk中退出程序?

Kin*_*Dan 6 smalltalk pharo

C++有System.exit(0),VB有End,C#有Application.Exit

你将如何退出Smalltalk的程序?我正在使用Pharo.注意:我不是要退出Pharo本身,而是在此特定指令期间终止我的程序.

我找到了如何退出Pharo本身,但这又不是我想要的: Smalltalk exit: 0.

谢谢你的帮助!

Uko*_*Uko 5

你的问题实际上有两个部分.所以退出Pharo本身就相当于System.exit(0).因为系统正在运行C++进程,然后退出,所以同样适用于Pharo.

继续这样做:您可以考虑从当前的图像中启动另一个pharo图像,并根据需要终止该过程.

您真正要问的是如何退出Pharo中正在执行的部分代码.这是一个复杂的问题,因为您还必须回答代码与Pharo之间的界限.我认为这取决于你的实施.也许它足以关闭一个窗口,或从某个地方删除你的类的实例.

如果你想要一个更通用的方法,你可以通过使用[ ] fork然后通过发送suspend或者terminate(你可以获得活动进程Processor activeProcess)来停止它,从而在单独的pharo进程中开始执行.或者你可以做thisContext terminate.