|
|
@@ -29,7 +29,13 @@ inputOutputMapping: hashmap 输入输出对
|
|
|
@app.route('/api/judge', methods=['POST'])
|
|
|
def judge():
|
|
|
start = time.time()
|
|
|
- data = json.loads(request.get_data(as_text=True))
|
|
|
+ requestData = request.get_data(as_text=True)
|
|
|
+ app.logger.info("requestData:" + str(time.time() - start))
|
|
|
+
|
|
|
+ start = time.time()
|
|
|
+ data = json.loads(requestData)
|
|
|
+ app.logger.info("json:"+str(time.time() - start))
|
|
|
+
|
|
|
code = data['code']
|
|
|
language = data['language']
|
|
|
time_limit = int(data['timeLimit'])
|
|
|
@@ -40,12 +46,20 @@ def judge():
|
|
|
return {"result_list": [{'result': "System Error"}],
|
|
|
'message': 'test data incompleted'}
|
|
|
td_total = len(input_list)
|
|
|
+
|
|
|
+ start = time.time()
|
|
|
save_test_cases(input_list, output_list, td_total)
|
|
|
src_file = save_code(language, code)
|
|
|
+ app.logger.info("savefile:"+str(time.time() - start))
|
|
|
+
|
|
|
+ start = time.time()
|
|
|
rst = judgement.judge(src_file, 'testcases', td_total, time_limit, memory_limit, language)
|
|
|
+ app.logger.info("judge:"+str(time.time()-start))
|
|
|
+
|
|
|
+ start = time.time()
|
|
|
os.remove(src_file)
|
|
|
shutil.rmtree('testcases')
|
|
|
- app.logger.info(time.time()-start)
|
|
|
+ app.logger.info("rm:" + str(time.time() - start))
|
|
|
return rst
|
|
|
|
|
|
|