equal
deleted
inserted
replaced
188 command_input = input_actor(command_stream) |
188 command_input = input_actor(command_stream) |
189 val message = message_actor(message_stream) |
189 val message = message_actor(message_stream) |
190 |
190 |
191 val rc = process_result.join |
191 val rc = process_result.join |
192 system_output("process terminated") |
192 system_output("process terminated") |
|
193 close_input() |
193 for ((thread, _) <- List(standard_input, stdout, stderr, command_input, message)) |
194 for ((thread, _) <- List(standard_input, stdout, stderr, command_input, message)) |
194 thread.join |
195 thread.join |
195 system_output("process_manager terminated") |
196 system_output("process_manager terminated") |
196 exit_message(rc) |
197 exit_message(rc) |
197 } |
198 } |
203 |
204 |
204 def join() { process_manager.join() } |
205 def join() { process_manager.join() } |
205 |
206 |
206 def terminate() |
207 def terminate() |
207 { |
208 { |
208 close() |
209 close_input() |
209 system_output("Terminating Isabelle process") |
210 system_output("Terminating Isabelle process") |
210 terminate_process() |
211 terminate_process() |
211 } |
212 } |
212 |
213 |
213 |
214 |
398 { |
399 { |
399 receiver(new Input(name, args.toList)) |
400 receiver(new Input(name, args.toList)) |
400 input_bytes(name, args.map(Standard_System.string_bytes): _*) |
401 input_bytes(name, args.map(Standard_System.string_bytes): _*) |
401 } |
402 } |
402 |
403 |
403 def close(): Unit = { close(command_input); close(standard_input) } |
404 def close_input(): Unit = { close(command_input); close(standard_input) } |
404 } |
405 } |