0

私は素晴らしいシーサイドブックのマグマに関するチュートリアルに従っていましたが、ある時点で画像が完全に動かなくなりました. その時点でデバッガーを使用していて、次のスニペットの一部で「検査」を実行しようとしました。ToDoDB root

ToDoDB createDB.
ToDoDB commit: [ ToDoDB root add: ToDoItem new ].
ToDoDB release.

その後、私の画像は何にも反応しなくなりました。

Magma が検査アクションでそのように振る舞った理由にちょっと興味がありますが、この問題を修正するためのオプションを知りたいですか? このイメージを捨てて、ゼロから始めるべきですか?OS シグナルを VM に送信して、アクティブなスレッドなどを強制終了できますか? Smalltalk初心者です。

4

2 に答える 2

2

Sean はすでに回答していますが、pharo の共同書籍にも記載されています: http://book.pharo-project.org/book/TipsAndTricks/InterruptKey/

「OS シグナルを VM に送信して、アクティブなスレッドか何かを強制終了できますか? ここでは Smalltalk 初心者です。」ほとんどの Smalltalk 方言には、「グリーン スレッド」と呼ばれるものがあることに注意してください。つまり、OS の観点からは 1 つのスレッドにすぎません。内部の Smalltalk は、さまざまなプロセスとそれに関するスケジュールを自分自身で管理します。Processor、Schedulerなどのクラスを確認してください。つまり...外部からスレッドを強制終了したい場合は、唯一のスレッド、つまりVM全体を強制終了するということです;)

于 2011-04-25T12:00:06.480 に答える
1

割り込みを送信してみてください。お使いのプラットフォーム (つまり、基盤となる OS) のショートカットについては、http://wiki.squeak.org/squeak/899を参照してください。

また、おそらく「この VM」ではなく「このイメージを捨てる」という意味です。Pharo By Exampleは、イメージ、変更ファイル、VM などの Smalltalk の基本に関する優れた無料リソースです。

于 2011-04-25T03:31:09.737 に答える