[英]How to save a Pharo image automatically every hour?
我希望每小時自動保存我的Pharo圖像。
你會如何在圖像中自動進行此操作?
我見過Pier項目這樣做。 但我不確定他們是怎么做到的。
TIA
對郵件列表進行討論的結果,只有每小時運行一次:
[[self blockUI.
self doUpdate.
SmalltalkImage current snapshot: true andQuit: false.
self unblockUI.
(Delay forDuration: (Duration hours: 1)) wait] repeat] fork
SqueakSource上的Scheduler項目看起來像Smalltalk的cron。 從概述:
“啟動一個新的任務調度程序並保持它”\n scheduler:= TaskScheduler new。\n 調度程序啟動。\n “讓我們每小時保存一次圖像”\n 調度\n 執行:[Smalltalk snapshot:true andQuit:false]\n 每:60分鍾。
你可以將它與上面提到的阻塞代碼或OSProcess的saveImageInBackgroundNicely結合起來,並有一個很好的簡單解決方案。
你可以做到,它可能工作得很好。
但我不會這樣做。
不是生產中的持久性。
為什么?
因為圖像就像是筆記本電腦中的會話。 保存你的形象就像讓你的筆記本電腦一樣睡覺:它堅持一切。
而且從長遠來看,某些州會有一些無法解釋的狗屎可能使某些事情變得復雜,你需要進行一次硬重啟。
試圖成為完美主義者並沒有幫助(或許它確實如此,但肯定不經濟)。 它只會發生並重新啟動你的筆記本電腦是一個新的狀態的廉價解決方案。 但對於你的smalltalk應用程序而言,這可能並不那么便宜。
smalltalk中的硬重啟將意味着您必須拍攝一張新圖像並再次加載所有代碼(它可以自動化但經驗告訴可能很費時)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.