equal
deleted
inserted
replaced
126 ! ! |
126 ! ! |
127 |
127 |
128 !JavaProcess methodsFor:'suspend & resume'! |
128 !JavaProcess methodsFor:'suspend & resume'! |
129 |
129 |
130 terminateNoSignal |
130 terminateNoSignal |
131 | jThread | |
131 | jThread jThreadMonitor | |
132 jThread := Java threadForStProcess: self. |
132 jThread := Java threadForStProcess: self. |
133 jThread notNil ifTrue:[ |
133 jThread notNil ifTrue:[ |
134 JavaVM acquireMonitorAndNotifyAll: jThread. |
134 jThreadMonitor := jThread getJavaMonitor. |
|
135 [ |
|
136 jThreadMonitor |
|
137 acquire; |
|
138 notify: true. "/ notifyAll() |
|
139 ] ensure:[ |
|
140 jThreadMonitor release. |
|
141 ]. |
135 ]. |
142 ]. |
136 super terminateNoSignal |
143 super terminateNoSignal |
137 |
144 |
138 "Created: / 15-12-2010 / 00:18:52 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
145 "Created: / 15-12-2010 / 00:18:52 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
139 "Modified: / 09-12-2011 / 12:51:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
146 "Modified: / 09-12-2011 / 12:51:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
140 "Modified: / 27-08-2012 / 11:50:50 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
147 "Modified: / 15-08-2017 / 23:39:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
141 ! ! |
148 ! ! |
142 |
149 |
143 !JavaProcess::Helper methodsFor:'initialization'! |
150 !JavaProcess::Helper methodsFor:'initialization'! |
144 |
151 |
145 javaProcess:something |
152 javaProcess:something |
243 ] |
250 ] |
244 ] |
251 ] |
245 ] |
252 ] |
246 ] |
253 ] |
247 ] ensure:[ |
254 ] ensure:[ |
248 JavaVM leaveMonitorsOfProcess:javaProcess. |
|
249 javaProcess == (Smalltalk at:#'JavaVM:JavaScreenUpdaterThread') ifTrue:[ |
255 javaProcess == (Smalltalk at:#'JavaVM:JavaScreenUpdaterThread') ifTrue:[ |
250 Smalltalk at:#'JavaVM:JavaScreenUpdaterThread' put:nil. |
256 Smalltalk at:#'JavaVM:JavaScreenUpdaterThread' put:nil. |
251 ]. |
257 ]. |
252 javaProcess == (Smalltalk at:#'JavaVM:JavaEventQueueThread') ifTrue:[ |
258 javaProcess == (Smalltalk at:#'JavaVM:JavaEventQueueThread') ifTrue:[ |
253 Smalltalk at:#'JavaVM:JavaEventQueueThread' put:nil. |
259 Smalltalk at:#'JavaVM:JavaEventQueueThread' put:nil. |
261 ] |
267 ] |
262 ] |
268 ] |
263 |
269 |
264 "Created: / 15-12-2010 / 11:06:46 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
270 "Created: / 15-12-2010 / 11:06:46 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
265 "Modified: / 09-12-2011 / 12:51:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
271 "Modified: / 09-12-2011 / 12:51:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
266 "Modified: / 02-03-2015 / 14:02:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
272 "Modified: / 15-08-2017 / 23:44:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
267 ! ! |
273 ! ! |
268 |
274 |
269 !JavaProcess class methodsFor:'documentation'! |
275 !JavaProcess class methodsFor:'documentation'! |
270 |
276 |
271 version |
277 version |