如果当前图像是运行时图像还是开发图像,有没有办法告诉Pharo Smalltalk?我想创建一种方法来发出关闭运行时映像但不是开发映像的信号。
答案 0 :(得分:1)
在Pharo中,有一个删除功能可以删除开发时间类和工具,将其打包为运行时。它与VA相似,但不是同样的过程。
没有方便的方法来检查它是否是运行时vs dev。但是在Smalltalk中加一个便宜..所以继续把它添加到
SmalltalkImage>> isRuntime
^( Smalltalk at: #Metacello1 ifAbsent: [ ] ) isNil
"或者您保证的任何类在运行时始终不存在于运行时映像中,并始终存在于开发中。
ImageCleaner>>提供清理生产/发布的方法..并提供更多支持。
答案 1 :(得分:0)
没有像#34;运行时"这样的内置区别。与#34;开发"在Smalltalk图像中。但是,由于它是一个实时环境,您可以指出这个,但是通过单身人士。类似的东西:
SessionType class>>uniqueInstance
^ uniqueInstance ifNil: [ uniqueInstance := self new ]
SessionType>>isDevelopment
^ isDevelopment
SessionType>>isDevelopment: aBoolean
isDevelopment := aBoolean