[Squeak-ja: 3825] Re: ループしているプロセスの停止について

久保 道 kubo-o @ mbox.kyoto-inet.or.jp
2008年 2月 15日 (金) 12:33:27 JST


阿部さん、さっそく教えていただいて、
ありがとうございました。
ただ、前回書きましたように私の場合は、
ご指示くださったように
「まずは変数に入れたほうが良い」という点が
できていなかったので、困っています。
最終的には必要なcodeだけ取り出して
別につくりなおすことにします。
お返事遅れて失礼いたしました。
久保 道
-----Original Message-----
From: squeak-ja-bounces @ smalltalk.jp [mailto:squeak-ja-bounces @ smalltalk.jp]
On Behalf Of Kazuhiro ABE
Sent: Thursday, February 07, 2008 4:14 PM
To: Squeak discussion in Japanese
Subject: [Squeak-ja: 3816] Re: ループしているプロセスの停止について

阿部@新百合です。

いきなりforkを送ると、あとでそのプロセスを捕まえにくくなるので、まずは変
数に入れたほうが良いと思います。

arm := LineMorph from: 290 @ 300 to: 710 @ 300  color: Color black width: 5.
process := [[ arm openInWorld.
   ( Delay forSeconds: 1) wait] repeat] newProcess.
process resume

これを終了するときは以下のようにします。

process terminate

他どのようなメソッドがあるかはProcessクラスのインスタンスメソッドを見てく
ださい。
forkは単なる予約語ではなく、メッセージですから、ブロックにforkを送ったと
きになにが起こっているかを考える必要があります。
ワークスペースなどでforkを選択し、Alt+bを押すとその定義を調べることができ
ます。
せっかく中身を参照できるわけですから、今回の問題に限らず、分からないこと
があったら、中を調べてみるのは良い習慣だと思います。

また、自由自在では一章を費やして並行処理について解説しています(第12章)。

 //abee
--
阿部 和広  EMAIL abee @ squeakland.jp

No virus found in this incoming message.
Checked by AVG.
Version: 7.5.516 / Virus Database: 269.19.21/1267 - Release Date: 2008/02/08
20:12


No virus found in this outgoing message.
Checked by AVG.
Version: 7.5.516 / Virus Database: 269.20.5/1279 - Release Date: 2008/02/14
18:35




Squeak-ja メーリングリストの案内