```添加同步以防止查询日志明细时的潜在竞态条件
在`queryIntegrationTaskLivingDetails`方法中引入同步,以防止在查询日志明细时出现潜在的竞态条件问题。这确保了在多线程环境中访问共享资源时的数据一致性。 ```
This commit is contained in:
parent
abf1c5eaf4
commit
9f6484c617
|
@ -23,16 +23,20 @@ public class IntegrationTaskLivingDetailsUtil {
|
|||
@Autowired
|
||||
private IIntegrationTaskLivingDetailsDao iIntegrationTaskLivingDetailsDao;
|
||||
|
||||
private static final Object OBJECT_LOCK = new Object();
|
||||
|
||||
/**
|
||||
* 批量查询日志明细
|
||||
*
|
||||
* @author liuyang
|
||||
*/
|
||||
public List<IntegrationTaskLivingDetailsEntity> queryIntegrationTaskLivingDetails(String primaryKey, String pluginId) throws Exception {
|
||||
QueryIntegrationTaskLivingDetails queryIntegrationTaskLivingDetails = new QueryIntegrationTaskLivingDetails();
|
||||
queryIntegrationTaskLivingDetails.setRoot_app_pk_s(primaryKey);
|
||||
queryIntegrationTaskLivingDetails.setParam_new_state(ProfilesActiveConstant.LOG_STATUS_Y_H);
|
||||
queryIntegrationTaskLivingDetails.setPluginId(pluginId);
|
||||
return (List<IntegrationTaskLivingDetailsEntity>) iIntegrationTaskLivingDetailsDao.query(queryIntegrationTaskLivingDetails);
|
||||
synchronized (OBJECT_LOCK) {
|
||||
QueryIntegrationTaskLivingDetails queryIntegrationTaskLivingDetails = new QueryIntegrationTaskLivingDetails();
|
||||
queryIntegrationTaskLivingDetails.setRoot_app_pk_s(primaryKey);
|
||||
queryIntegrationTaskLivingDetails.setParam_new_state(ProfilesActiveConstant.LOG_STATUS_Y_H);
|
||||
queryIntegrationTaskLivingDetails.setPluginId(pluginId);
|
||||
return (List<IntegrationTaskLivingDetailsEntity>) iIntegrationTaskLivingDetailsDao.query(queryIntegrationTaskLivingDetails);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue