VirtualThread

This commit is contained in:
2025-06-17 17:09:34 +08:00
parent 5f8c4fd6e6
commit 7d6c87cc74
8 changed files with 17 additions and 11 deletions

View File

@@ -96,7 +96,7 @@ public class WxPayServiceImpl implements WxPayService {
log.info("[微信支付]parse = {}", callbackResponse);
// 更新订单信息
new Thread(() -> {
Thread.ofVirtual().start(() -> {
long orderId = Long.parseLong(callbackResponse.getOrderNo());
if (callbackResponse.isPay()) {
orderBiz.paidOrder(orderId);
@@ -105,7 +105,7 @@ public class WxPayServiceImpl implements WxPayService {
} else if (callbackResponse.isRefund()) {
orderBiz.refundOrder(orderId);
}
}).start();
});
} catch (Exception e) {
throw new AppException(BizCodeEnum.ADVANCE_PAYMENT_CALLBACK_FAILED, e.toString());
}

View File

@@ -314,12 +314,12 @@ public class FaceServiceImpl implements FaceService {
FaceEntity face = faceRepository.getFace(faceId);
faceMapper.deleteById(faceId);
faceRepository.clearFaceCache(faceId);
new Thread(() -> {
Thread.ofVirtual().start(() -> {
sourceMapper.deleteNotBuyFaceRelation(face.getMemberId(), faceId);
videoMapper.deleteNotBuyFaceRelations(face.getMemberId(), faceId);
IFaceBodyAdapter adapter = scenicService.getScenicFaceBodyAdapter(face.getScenicId());
adapter.deleteFace(USER_FACE_DB_NAME+face.getScenicId().toString(), faceId.toString());
}).start();
});
return ApiResponse.success("删除成功");
}

View File

@@ -100,10 +100,10 @@ public class ScenicServiceImpl implements ScenicService {
if (i > 0) {
scenicAccountMapper.deleteByScenicId(id);
IFaceBodyAdapter adapter = getScenicFaceBodyAdapter(id);
(new Thread(() -> {
Thread.ofVirtual().start(() -> {
adapter.deleteFaceDb(id.toString());
adapter.deleteFaceDb(USER_FACE_DB_NAME + id);
})).start();
});
scenicMapper.deleteConfigByScenicId(id);
scenicRepository.clearCache(id);
scenicFaceBodyAdapterMap.remove(id);

View File

@@ -610,7 +610,7 @@ public class TaskTaskServiceImpl implements TaskService {
}
}
videoMapper.updateRelationWhenTaskSuccess(taskId, video.getId(), isBuy);
new Thread(() -> sendVideoGeneratedServiceNotification(taskId)).start();
Thread.ofVirtual().start(() -> sendVideoGeneratedServiceNotification(taskId));
}
@Override

View File

@@ -103,13 +103,13 @@ public class VideoPieceGetter {
return;
}
log.info("poll task: {}/{}", task, queue.size());
new Thread(() -> {
Thread.ofVirtual().start(() -> {
try {
runTask(task);
} catch (Exception e) {
log.error("run task error", e);
}
}).start();
});
}
private void runTask(Task task) {