私は、Pythonを使ってGPSDポーリングを実施しています https://gist.github.com/wolfg1969/4653340 : http://www.catb.org/gpsd/client-howto.html#_python_examplesPythonの非スレッドプールのGPSD使い方は
は、私がここでコードを使用傾ける理由があります私は自分のシステムで約10個のプロセスをデーモン化しなければならないので、簡単な実装のためにcatbに行きます。
次のコードで2サイクル後に停止する理由について質問がありますか?どのように私はこれを修正することができますか?ありがとう。
def GpsDetection():
global gpsd
gpsd = gps(mode=WATCH_ENABLE)
try:
while 1:
# Do stuff
report = gpsd.next()
# Check report class for 'DEVICE' messages from gpsd. If we're expecting messages from multiple devices we should
# inspect the message to determine which device has just become available. But if we're just listening
# to a single device, this may do.
print report
if report['class'] == 'DEVICE':
# Clean up our current connection.
gpsd.close()
# Tell gpsd we're ready to receive messages.
gpsd = gps(mode=WATCH_ENABLE)
# Do more stuff
print "GPSD Data is showing now!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
print datetime.datetime.now()
print 'latitude ' , gpsd.fix.latitude
print 'longitude ' , gpsd.fix.longitude
print 'time utc ' , gpsd.utc,' + ', gpsd.fix.time
print 'altitude (m)' , gpsd.fix.altitude
print 'eps ' , gpsd.fix.eps
print 'epx ' , gpsd.fix.epx
print 'epv ' , gpsd.fix.epv
print 'ept ' , gpsd.fix.ept
print 'speed (m/s) ' , gpsd.fix.speed
print 'climb ' , gpsd.fix.climb
print 'track ' , gpsd.fix.track
print 'mode ' , gpsd.fix.mode
print
print 'sats ' , gpsd.satellites
time.sleep(1)
except StopIteration:
print "GPSD has terminated"
return