读书人

线程施用

发布时间: 2012-11-18 10:51:21 作者: rapoo

线程应用
/**
* 扫描存储周期配置变更线程
*
*/
new BasicThread("SynchronizeDataRetentionThread")
{
@Override
public void run()
{
while (isRun())
{
if (isInited)
{
/* 如果存储周期整在变化,则不创建区域与预定义对象的表 */
if(ReportServerInitializer.isCreateTable())
{
continue;
}
try
{
if (dataRetentionSyn == null)
{
dataRetentionSyn = new DataRetentionSyn();
}

if (logger.isDebugEnabled())
{
logger
.debug("RptServer Thread"
+ " is synchronizing table MNT_DATA_RETENTION_TIME ...");
}

dataRetentionSyn.synchronier();

}
catch (Throwable e)
{
if (logger.isErrorEnabled())
{
logger.error(e.getMessage(), e);
}
}
finally
{
// 不管建表成功或是失败,则允许其他线程进行建表操作
ReportServerInitializer.changeIsCreateTableTo(false);
}
}

this.threadSleep(60 * 1000);
}
}

}.start();

读书人网 >软件架构设计

热点推荐