4
我有一个名为ThreadTesting
的类,在该类中我有一个名为'col'(它是一个数组)的实例变量。我的目标是通过线程填充它,等待线程完成并输出其内容。Smalltalk Pharo - 无法更新线程中的类实例变量
ThreadTesting new callThread.
ThreadTesting
类:
initialize
super initialize.
semaphore := Semaphore new.
col := Array new: 10.
callThread
方法:
callThread
self runThread.
semaphore wait.
Transcript show: 'Thread finished';cr.
col do:
[ :each | Transcript show: each ; cr].
runThread
方法:
runThread
|pr|
pr := [
[ 1 to: 10 do: [ :i |
col at: i put: i
]].
semaphore signal.
] fork.
输出:
这是所有设置为nil
,我不知道为什么。