diff --git a/robomaster_pi/command_executer.py b/robomaster_pi/command_executer.py index 9a17aa9a9ea91113ba82af4c4c7261b9339a2b19..a4d7eb9b027632969deb0974024a4a9c27006415 100644 --- a/robomaster_pi/command_executer.py +++ b/robomaster_pi/command_executer.py @@ -4,6 +4,7 @@ from std_msgs.msg import String import subprocess import threading import signal +import os class CommandExecutor(Node): def __init__(self): @@ -42,7 +43,7 @@ class CommandExecutor(Node): if name in self.running_processes: try: process_handle = self.running_processes[name] - process_handle.send_signal(signal.SIGINT) + os.kill(process_handle.pid, signal.SIGINT) process_handle.wait(timeout=30) except subprocess.TimeoutExpired: process_handle.kill()