A bit off topic, but I would do the STON writing as follows: [ (FileLocator temp / 'file.ston') writeStreamDo: [ :out | (STON writer on: out) in: [ :stonWriter | 30 timesRepeat: [ stonWriter nextPut: Smalltalk allClasses ] ] ]. ] timeToRun. "0:00:00:02.176" But in light of alternative streams and some optimisation, this works too: [ | file | file := (File named: '/tmp/file.ston') openForWrite. [ ZnBufferedWriteStream on: (ZnCharacterWriteStream on: file) do: [ :out | (STON writer on: out) in: [ :stonWriter | 30 timesRepeat: [ stonWriter nextPut: Smalltalk allClasses ] ] ] ] ensure: [ file close ]. ] timeToRun. "0:00:00:00.385" Which is faster. Total file size is ~1.2MB. BTW, we need #readStreamDo: and #writeStreamDo: on File I think, as it encourages proper resource management.
On 5 Feb 2017, at 19:16, Henrik Nergaard <draagren@outlook.com> wrote:
http://smalltalkhub.com/#!/~Latsabben/GafletFremgangFremviser
--------------------- | ston file|
ston := (1 to: 30) flatCollect: [:ix |STON toStringPretty: Smalltalk allClasses]. file := (FileStream fileNamed: 'file.ston').
ston whileDisplayingProgress action: [ :stream | file nextPutAll: stream ] whenDone: [ file close ]; open; fillOwner ---------------------
Best regards, Henrik
-----Opprinnelig melding----- Fra: Pharo-dev [mailto:pharo-dev-bounces@lists.pharo.org] PÃ¥ vegne av Yuriy Tymchuk Sendt: 05 February 2017 16:56 Til: Pharo Development List <pharo-dev@lists.pharo.org> Emne: [Pharo-dev] How can I create a trivial "spinner" etc, to see if image is busy?
Hi all,
is there an easy was to do some thing that is constantly changing? so if my image freezes (to export a 1gb ston file for example) I can see when itâs done. Or maybe there is a way to send a mac notification from Pharo?
Cheers. Uko