Wie geht ein Thread in Python?
Danke.
Gruss
Code: Alles auswählen
import time
import krpc
import socket
TCP_IP = '127.0.0.1'
TCP_PORT = 5000
BUFFER_SIZE = 64
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((TCP_IP, TCP_PORT))
s.listen(1)
con, addr = s.accept()
TCP_IP = '127.0.0.1'
TCP_PORT = 5001
BUFFER_SIZE1 = 64
s1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s1.bind((TCP_IP, TCP_PORT))
s1.listen(1)
con1, addr1 = s1.accept()
conn = krpc.connect(name='Sub-orbital flight',
address='127.0.0.1',
rpc_port=1000, stream_port=1001)
conn1 = krpc.connect(name='Sub-orbital flight',
address='127.0.0.1',
rpc_port=2000, stream_port=2001)
vessel = conn.space_center.active_vessel
ref_frame = conn.space_center.ReferenceFrame.create_hybrid(
position=vessel.orbit.body.reference_frame,
rotation=vessel.surface_reference_frame)
vessel1 = conn1.space_center.active_vessel
ref_frame1 = conn1.space_center.ReferenceFrame.create_hybrid(
position1=vessel.orbit.body.reference_frame1,
rotation1=vessel.surface_reference_frame1)
time.sleep(1)
while True:
data =con.recv(BUFFER_SIZE)
if len(data) > 3:
li=data.split(",")
ti2=li.pop()
ti1=li.pop()
if ti1=='trottle':
vessel.control.throttle = float(ti2)
if ti1=='stage':
vessel.control.activate_next_stage()
if ti1=='heading':
vessel.control.set_target_heading=float(ti2)
if (data) == 'd,0':
data_velo=round(vessel1.flight(ref_frame).speed)
data_alti =round(vessel1.flight().mean_altitude)
data_apoa =round(vessel1.orbit.apoapsis_altitude)
data_peri =round(vesse1l.orbit.periapsis_altitude)
con1.send(':'+str(data_velo)+':'+str(data_alti)+':'+str(data_apoa)+':'+str(data_peri)+':')
con.close()
conn.close()
con1.close()
conn1.close()