Commit 4b0339f8 authored by liyuanhong's avatar liyuanhong

修改了一个bug

parent 3f38bca9
[2020-08-21 23:06:57]启动了线程:thread_0车机号:M202003060520
[2020-08-21 23:07:02]剩余线程数:1
[2020-08-31 12:02:06]启动了线程:thread_0车机号:M202008280000
[2020-08-31 12:02:06]启动了线程:thread_1车机号:M202008280001
[2020-08-31 12:02:06]启动了线程:thread_2车机号:M202008280002
[2020-08-31 12:02:06]启动了线程:thread_3车机号:M202008280003
[2020-08-31 12:02:06]启动了线程:thread_4车机号:M202008280004
[2020-08-31 12:02:06]启动了线程:thread_5车机号:M202008280005
[2020-08-31 12:02:06]启动了线程:thread_6车机号:M202008280006
[2020-08-31 12:02:06]启动了线程:thread_7车机号:M202008280007
[2020-08-31 12:02:06]启动了线程:thread_8车机号:M202008280008
[2020-08-31 12:02:06]启动了线程:thread_9车机号:M202008280009
[2020-08-31 12:02:06]启动了线程:thread_10车机号:M202008280010
[2020-08-31 12:02:06]启动了线程:thread_11车机号:M202008280011
[2020-08-31 12:02:06]启动了线程:thread_12车机号:M202008280012
[2020-08-31 12:02:06]启动了线程:thread_13车机号:M202008280013
[2020-08-31 12:02:06]启动了线程:thread_14车机号:M202008280014
[2020-08-31 12:02:06]启动了线程:thread_15车机号:M202008280015
[2020-08-31 12:02:06]启动了线程:thread_16车机号:M202008280016
[2020-08-31 12:02:06]启动了线程:thread_17车机号:M202008280017
[2020-08-31 12:02:06]启动了线程:thread_18车机号:M202008280018
[2020-08-31 12:02:06]启动了线程:thread_19车机号:M202008280019
[2020-08-31 12:02:06]启动了线程:thread_20车机号:M202008280020
[2020-08-31 12:02:06]启动了线程:thread_21车机号:M202008280021
[2020-08-31 12:02:06]启动了线程:thread_22车机号:M202008280022
[2020-08-31 12:02:06]启动了线程:thread_23车机号:M202008280023
[2020-08-31 12:02:06]启动了线程:thread_24车机号:M202008280024
[2020-08-31 12:02:06]启动了线程:thread_25车机号:M202008280025
[2020-08-31 12:02:06]启动了线程:thread_26车机号:M202008280026
[2020-08-31 12:02:06]启动了线程:thread_27车机号:M202008280027
[2020-08-31 12:02:06]启动了线程:thread_28车机号:M202008280028
[2020-08-31 12:02:06]启动了线程:thread_29车机号:M202008280029
[2020-08-31 12:02:06]启动了线程:thread_30车机号:M202008280030
[2020-08-31 12:02:06]启动了线程:thread_31车机号:M202008280031
[2020-08-31 12:02:06]启动了线程:thread_32车机号:M202008280032
[2020-08-31 12:02:06]启动了线程:thread_33车机号:M202008280033
[2020-08-31 12:02:06]启动了线程:thread_34车机号:M202008280034
[2020-08-31 12:02:06]启动了线程:thread_35车机号:M202008280035
[2020-08-31 12:02:06]启动了线程:thread_36车机号:M202008280036
[2020-08-31 12:02:06]启动了线程:thread_37车机号:M202008280037
[2020-08-31 12:02:06]启动了线程:thread_38车机号:M202008280038
[2020-08-31 12:02:06]启动了线程:thread_39车机号:M202008280039
[2020-08-31 12:02:11]剩余线程数:40
成功线程数:0
失败线程数:0
[2020-08-21 23:07:07]剩余线程数:1
[2020-08-31 12:02:16]剩余线程数:40
成功线程数:0
失败线程数:0
[2020-08-21 23:07:12]剩余线程数:1
成功线程数:0
失败线程数:0
[2020-08-21 23:07:17]剩余线程数:1
成功线程数:0
失败线程数:0
[2020-08-21 23:07:22]剩余线程数:1
成功线程数:0
失败线程数:0
[2020-08-21 23:07:27]剩余线程数:1
成功线程数:0
失败线程数:0
thread_0线程结束
[2020-08-21 23:07:32]剩余线程数:0
成功线程数:1
失败线程数:0
[2020-08-21 23:07:32]剩余线程数:0
----------------------------------------------
开始测试时间:2020-08-21 23:06:57
结束测试时间:2020-08-21 23:07:32
线程总数:1
成功线程数:1
失败线程数:0
设置线程持续时间:30
{"time": {"dateTime": "2020-08-05 18:21:01", "date": "2020-08-05", "time": "18:21:01"}, "curDayTravel": {"todayTotalMilleage": 132, "todayTotalOil": 12, "todayTotalTime": 6, "theMilleage": 41052, "theOil": 3732, "theTime": 1866}, "travelData": {"totalMilleage": 41052, "totalOil": 3732, "totalTime": 1866}}
\ No newline at end of file
......@@ -105,59 +105,58 @@ class M500PressureServer():
while self.serviceStatus == 1:
time.sleep(self.sendDur)
# self.isLogOut = int(self.getFileContent("config/log.conf"))
# gpsMsg = ""
# OBDMsg = ""
# if self.travelStatus == 0:
# latitude = self.gpsLine[self.gpsLineIndex]["lat"]
# longitude = self.gpsLine[self.gpsLineIndex]["lng"]
# gpsMsg = self.genGPSMsg(latitude,longitude)
# return
# elif self.travelStatus == 1:
# if self.gpsLineIndex < len(self.gpsLine):
# OBDMsg = self.genOBDMsg(self.OBDdata["fireStatus"],self.OBDdata["ACCStatus"],self.OBDdata["engineSpeed"], \
# self.OBDdata["speed"],self.OBDdata["meterMileage"],self.OBDdata["totailMileage"], \
# self.OBDdata["totalOilExpen"],self.OBDdata["totalRunTime"])
# self.OBDdata["engineSpeed"] = 3000
# self.OBDdata["speed"] = self.carSpeed
# self.OBDdata["meterMileage"] = self.OBDdata["meterMileage"] + int(self.sendDur * (self.OBDdata["speed"] * 1000 / 3600))
# self.OBDdata["totailMileage"] = self.OBDdata["totailMileage"] + int(self.sendDur * (self.OBDdata["speed"] * 1000 / 3600))
# oilExpend = self.oilExpend
# self.OBDdata["totalOilExpen"] = self.OBDdata["totalOilExpen"] + int((self.sendDur * (self.OBDdata["speed"] * 1000 / 3600)) * (1000 / (oilExpend *1000)))
# self.OBDdata["totalRunTime"] = self.OBDdata["totalRunTime"] + self.sendDur
# latitude = self.gpsLine[self.gpsLineIndex]["lat"]
# longitude = self.gpsLine[self.gpsLineIndex]["lng"]
# gpsMsg = self.genGPSMsg(latitude, longitude)
# self.gpsLineIndex = self.gpsLineIndex + 1
# info = self.getCurTime() + " 纬度:" + str(latitude).replace("\n","") + " 经度:" + str(longitude).replace("\n","")
# info.replace("\n","")
# print(info)
# self.writeToFile("result.txt", info + "\n", 1)
# elif self.gpsLineIndex == len(self.gpsLine):
# self.gpsLineIndex = self.gpsLineIndex - 1
# self.stopTravelService()
# self.carDataObj.setTodayTotalMilleage(self.carData["curDayTravel"]["todayTotalMilleage"] + self.OBDdata["totailMileage"] - self.OBDdataOri["totailMileage"])
# self.carDataObj.setTheMilleage(self.carData["curDayTravel"]["theMilleage"] + self.OBDdata["totailMileage"] -self.OBDdataOri["totailMileage"])
# self.carDataObj.setTotalMilleage(self.carData["travelData"]["totalMilleage"] + self.OBDdata["totailMileage"] -self.OBDdataOri["totailMileage"])
# temp = self.OBDdata["totailMileage"]
# self.OBDdataOri["totailMileage"] = temp
# self.carDataObj.setTodayTodayTotalOil(self.carData["curDayTravel"]["todayTotalOil"] + self.OBDdata["totalOilExpen"] - self.OBDdataOri["totalOilExpen"])
# self.carDataObj.setTheOil(self.carData["curDayTravel"]["theOil"] + self.OBDdata["totalOilExpen"] - self.OBDdataOri["totalOilExpen"])
# self.carDataObj.setTotalOil(self.carData["travelData"]["totalOil"] + self.OBDdata["totalOilExpen"] - self.OBDdataOri["totalOilExpen"])
# self.OBDdataOri["totalOilExpen"] = self.OBDdata["totalOilExpen"]
# self.carDataObj.setTodayTodayTotalTime(self.carData["curDayTravel"]["todayTotalTime"] + self.OBDdata["totalRunTime"] - self.OBDdataOri["totalRunTime"])
# self.carDataObj.setTheTime(self.carData["curDayTravel"]["theTime"] + self.OBDdata["totalRunTime"] - self.OBDdataOri["totalRunTime"])
# self.carDataObj.setTotalTime(self.carData["travelData"]["totalTime"] + self.OBDdata["totalRunTime"] - self.OBDdataOri["totalRunTime"])
# self.OBDdataOri["totalRunTime"] = self.OBDdata["totalRunTime"]
# if self.serviceStatus == 1:
# if OBDMsg != "":
# self.sendMsg(OBDMsg)
# self.sn = self.sn + 1
# if gpsMsg != "":
# time.sleep(0.1)
# self.sendMsg(gpsMsg)
# self.sn = self.sn + 1
# time.sleep(self.sendDur)
gpsMsg = ""
OBDMsg = ""
if self.travelStatus == 0:
latitude = self.gpsLine[self.gpsLineIndex]["lat"]
longitude = self.gpsLine[self.gpsLineIndex]["lng"]
gpsMsg = self.genGPSMsg(latitude,longitude)
return
elif self.travelStatus == 1:
if self.gpsLineIndex < len(self.gpsLine):
OBDMsg = self.genOBDMsg(self.OBDdata["fireStatus"],self.OBDdata["ACCStatus"],self.OBDdata["engineSpeed"], \
self.OBDdata["speed"],self.OBDdata["meterMileage"],self.OBDdata["totailMileage"], \
self.OBDdata["totalOilExpen"],self.OBDdata["totalRunTime"])
self.OBDdata["engineSpeed"] = 3000
self.OBDdata["speed"] = self.carSpeed
self.OBDdata["meterMileage"] = self.OBDdata["meterMileage"] + int(self.sendDur * (self.OBDdata["speed"] * 1000 / 3600))
self.OBDdata["totailMileage"] = self.OBDdata["totailMileage"] + int(self.sendDur * (self.OBDdata["speed"] * 1000 / 3600))
oilExpend = self.oilExpend
self.OBDdata["totalOilExpen"] = self.OBDdata["totalOilExpen"] + int((self.sendDur * (self.OBDdata["speed"] * 1000 / 3600)) * (1000 / (oilExpend *1000)))
self.OBDdata["totalRunTime"] = self.OBDdata["totalRunTime"] + self.sendDur
latitude = self.gpsLine[self.gpsLineIndex]["lat"]
longitude = self.gpsLine[self.gpsLineIndex]["lng"]
gpsMsg = self.genGPSMsg(latitude, longitude)
self.gpsLineIndex = self.gpsLineIndex + 1
info = self.getCurTime() + " 纬度:" + str(latitude).replace("\n","") + " 经度:" + str(longitude).replace("\n","")
info.replace("\n","")
# print(info)
self.writeToFile("result.txt", info + "\n", 1)
elif self.gpsLineIndex == len(self.gpsLine):
self.gpsLineIndex = self.gpsLineIndex - 1
self.stopTravelService()
self.carDataObj.setTodayTotalMilleage(self.carData["curDayTravel"]["todayTotalMilleage"] + self.OBDdata["totailMileage"] - self.OBDdataOri["totailMileage"])
self.carDataObj.setTheMilleage(self.carData["curDayTravel"]["theMilleage"] + self.OBDdata["totailMileage"] -self.OBDdataOri["totailMileage"])
self.carDataObj.setTotalMilleage(self.carData["travelData"]["totalMilleage"] + self.OBDdata["totailMileage"] -self.OBDdataOri["totailMileage"])
temp = self.OBDdata["totailMileage"]
self.OBDdataOri["totailMileage"] = temp
self.carDataObj.setTodayTodayTotalOil(self.carData["curDayTravel"]["todayTotalOil"] + self.OBDdata["totalOilExpen"] - self.OBDdataOri["totalOilExpen"])
self.carDataObj.setTheOil(self.carData["curDayTravel"]["theOil"] + self.OBDdata["totalOilExpen"] - self.OBDdataOri["totalOilExpen"])
self.carDataObj.setTotalOil(self.carData["travelData"]["totalOil"] + self.OBDdata["totalOilExpen"] - self.OBDdataOri["totalOilExpen"])
self.OBDdataOri["totalOilExpen"] = self.OBDdata["totalOilExpen"]
self.carDataObj.setTodayTodayTotalTime(self.carData["curDayTravel"]["todayTotalTime"] + self.OBDdata["totalRunTime"] - self.OBDdataOri["totalRunTime"])
self.carDataObj.setTheTime(self.carData["curDayTravel"]["theTime"] + self.OBDdata["totalRunTime"] - self.OBDdataOri["totalRunTime"])
self.carDataObj.setTotalTime(self.carData["travelData"]["totalTime"] + self.OBDdata["totalRunTime"] - self.OBDdataOri["totalRunTime"])
self.OBDdataOri["totalRunTime"] = self.OBDdata["totalRunTime"]
if self.serviceStatus == 1:
if OBDMsg != "":
self.sendMsg(OBDMsg)
self.sn = self.sn + 1
if gpsMsg != "":
time.sleep(0.1)
self.sendMsg(gpsMsg)
self.sn = self.sn + 1
time.sleep(self.sendDur)
endTime = int(time.time())
if (endTime - startTime) > self.durTime:
if self.threadName in self.info["threadsObj"]:
......@@ -179,7 +178,11 @@ class M500PressureServer():
#读取车机行驶数据
with open("data/protocolTools/carData/" + self.carId + ".json", "r", encoding="utf-8") as fi:
content = fi.read()
conJson = json.loads(content)
# 加if的作用是防止报错,详见:https://blog.csdn.net/longzhinuhou/article/details/86634949
if len(content) > 0:
conJson = json.loads(content)
else:
conJson = {"time": {"dateTime": "2020-08-31 10:47:43", "date": "2020-08-31", "time": "10:47:43"}, "curDayTravel": {"todayTotalMilleage": 2304, "todayTotalOil": 144, "todayTotalTime": 144, "theMilleage": 2304, "theOil": 144, "theTime": 144}, "travelData": {"totalMilleage": 2304, "totalOil": 144, "totalTime": 144}}
timeStamp = time.time()
timeArray = time.localtime(timeStamp)
dateTimeM = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
......@@ -415,15 +418,15 @@ class M500PressureServer():
if (self.startTime - endTime) > self.durTime:
break
try:
# self.sn = 1
# self.connectService()
# # self.startRevService() #启动接收消息服务
# self.sendLoginMsg()
# time.sleep(0.5)
# self.sendVersionMsg()
# time.sleep(0.5)
# self.fireOn()
# time.sleep(2)
self.sn = 1
self.connectService()
# self.startRevService() #启动接收消息服务
self.sendLoginMsg()
time.sleep(0.5)
self.sendVersionMsg()
time.sleep(0.5)
self.fireOn()
time.sleep(2)
self.startTravelService()
except BaseException as e:
traceback.print_exc()
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -15,8 +15,9 @@ def writeToFile(path,data,type=1): #1:代表追加 0:代表覆盖
with open(path, "w", encoding='utf-8') as fi:
fi.write(data)
carNums = 1 #模拟器数量
durTime = 30 #线程持续的时间
carNums = 100 #模拟器数量
durTime = 600 #线程持续的时间
startDin = 202008280000 #开始的车机号
info = {} #存放脚本运行时的信息
info["threadsObj"] = {} #用于运行线程的字典
info["failT"] = {} #失败线程
......@@ -28,10 +29,12 @@ def startSimulaterService():
timeArray = time.localtime(timeS)
startTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
for i in range(0,carNums):
carId = "M" + str(202003060520 + i)
carId = "M" + str(startDin + i)
autoCarObj = M500PressureServer()
autoCarObj.setHost("172.19.7.6")
autoCarObj.setPort(49008)
autoCarObj.setInfo(info)
autoCarObj.setSendDur(5)
autoCarObj.setSendDur(1)
autoCarObj.setCarId(carId)
autoCarObj.setDurTime(durTime)
threadId = "thread_" + str(i)
......@@ -61,6 +64,7 @@ def startSimulaterService():
timeS = int(time.time())
timeArray = time.localtime(timeS)
datetime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
threadNums = len(info["threadsObj"])
print("剩余线程数:" + str(threadNums) + "\n")
writeToFile("data/log1.txt", "[" + datetime + "]" + "剩余线程数:" + str(threadNums) + "\n", type=1)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment