📄 dataqueue.java
字号:
synchronized (m_DataBuffer[m_taskno]) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_DataBuffer[
m_taskno].get(MAX_DATA_BUFFER_NUM_1);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
if (m_Index == m_Limit) {
return null;
}
m_Index++;
if (m_Index > MAX_DATA_BUFFER_NUM_1 - 1) {
m_Index = 0;
}
m_meterData = (meterData) m_DataBuffer[m_taskno].get(m_Index);
m_HeadPointInfo.putIndex(m_Index);
m_HeadPointInfo.putLimit(m_Limit);
// CFunction.writeLog("dataqueue",
// "----get,m_Index:"+m_Index+"m_Limit:"+m_Limit,null);
m_DataBuffer[m_taskno].set(MAX_DATA_BUFFER_NUM_1,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getDataBuffer In DataQueue synchronized Error ", null);
return null;
}
return m_meterData;
}
/*
public static int getDisplayBufferNum() {
int m_Num = 0;
int m_SynFlag = -1;
synchronized (m_DisplayBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_DisplayBuffer.get(
CollectorDefine.MAX_DISPLAY_DATA_NUM);
int m_DisplayLimit = m_HeadPointInfo.getLimit();
int m_DisplayIndex = m_HeadPointInfo.getIndex();
if (m_DisplayLimit >= m_DisplayIndex) {
m_Num = m_DisplayLimit - m_DisplayIndex;
}
else {
m_Num = CollectorDefine.MAX_DISPLAY_DATA_NUM - m_DisplayIndex +
m_DisplayLimit;
}
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getDisplayBufferNum In DataQueue synchronized Error ", null);
return -1;
}
return m_Num;
}
*/
public synchronized static int getDisplayBufferNum() {
int m_SynFlag = -1;
meterData m_meterData = null;
//int m_SynFlag = -1;
int size = 0;
size = CollectorDefine.displayDatas.size();
return CollectorDefine.displayDatas.size();
}
/*
public static int putDisplayBuffer(meterData m_pmeterData) {
int m_SynFlag = -1;
synchronized (m_DisplayBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_DisplayBuffer.get(
CollectorDefine.MAX_DISPLAY_DATA_NUM);
int m_DisplayLimit = m_HeadPointInfo.getLimit();
int m_DisplayIndex = m_HeadPointInfo.getIndex();
int m_DisplayLimit1 = m_DisplayLimit + 1;
if (m_DisplayLimit1 >= CollectorDefine.MAX_DISPLAY_DATA_NUM) {
m_DisplayLimit1 = 0;
}
if (m_DisplayLimit1 == m_DisplayIndex) {
//CFunction.writeLog( " 严重错误:显示缓冲区已满" );
return -1;
}
meterData m_meterData = (meterData) m_DisplayBuffer.get(
m_DisplayLimit1);
m_meterData.copymeterData(m_pmeterData);
m_DisplayBuffer.set(m_DisplayLimit1, m_meterData);
m_HeadPointInfo.putIndex(m_DisplayIndex);
m_HeadPointInfo.putLimit(m_DisplayLimit1);
m_DisplayBuffer.set(CollectorDefine.MAX_DISPLAY_DATA_NUM, m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"putDisplayBuffer In DataQueue synchronized Error ", null);
return -1;
}
return 1;
}
*/
public synchronized static int putDisplayBuffer(meterData m_pmeterData) {
int m_SynFlag = -1;
meterData m_meterData = null;
//int m_SynFlag = -1;
int size = 0;
size = CollectorDefine.displayDatas.size();
if (size > 400) {
return -1;
}
CollectorDefine.displayDatas.addLast(m_pmeterData);
return 1;
}
public synchronized static meterData getDisplayBuffer() {
meterData m_meterData = null;
//int m_SynFlag = -1;
int size = 0;
size = CollectorDefine.displayDatas.size();
if (size <= 0) {
return null;
}
return (meterData) CollectorDefine.displayDatas.removeFirst();
}
/*
public static meterData getDisplayBuffer() {
meterData m_meterData = null;
int m_SynFlag = -1;
synchronized (m_DisplayBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_DisplayBuffer.get(
CollectorDefine.MAX_DISPLAY_DATA_NUM);
int m_DisplayLimit = m_HeadPointInfo.getLimit();
int m_DisplayIndex = m_HeadPointInfo.getIndex();
if (m_DisplayIndex == m_DisplayLimit) {
return null;
}
m_DisplayIndex++;
if (m_DisplayIndex >= CollectorDefine.MAX_DISPLAY_DATA_NUM) {
m_DisplayIndex = 0;
}
m_meterData = (meterData) m_DisplayBuffer.get(m_DisplayIndex);
// CFunction.writeLog("gettDisplayBuffer : m_meterData = " +m_meterData.toString() );
m_HeadPointInfo.putIndex(m_DisplayIndex);
m_HeadPointInfo.putLimit(m_DisplayLimit);
m_DisplayBuffer.set(CollectorDefine.MAX_DISPLAY_DATA_NUM, m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getDisplayBuffer In DataQueue synchronized Error ", null);
return null;
}
return m_meterData;
}
*/
public static int getFinishTaskBufferNum() {
int m_SynFlag = -1;
int m_Num = 0;
synchronized (m_FinishTaskBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_FinishTaskBuffer.get(
CollectorDefine.MAX_FINISH_TASK_NUM);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
if (m_Limit >= m_Index) {
m_Num = m_Limit - m_Index;
}
else {
m_Num = CollectorDefine.MAX_FINISH_TASK_NUM - m_Index + m_Limit;
}
m_FinishTaskBuffer.set(CollectorDefine.MAX_FINISH_TASK_NUM,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getFinishTaskBufferNum In DataQueue synchronized Error ", null);
return -1;
}
return m_Num;
}
public static int putFinishTaskBuffer(int m_taskno, long m_termid,
long m_facid) {
if (m_taskno >= CollectorDefine.MAX_THREAD_NUM || m_taskno < 0) {
// CFunction.writeLog("dataqueue"," putFinishTaskBuffer In DataQueue Error #1, facno:" +
// m_taskno, null);
return -1;
}
if (m_termid < 0 || m_facid <= 0) {
CFunction.writeLog("dataqueue",
" putFinishTaskBuffer In DataQueue Error #2, m_termid:" + m_termid, null);
return -1;
}
// wj add
// m_taskno = m_taskno /10;
//
int m_SynFlag = -1;
synchronized (m_FinishTaskBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_FinishTaskBuffer.get(
CollectorDefine.MAX_FINISH_TASK_NUM);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
int m_Limit1 = m_Limit + 1;
if (m_Limit1 >= CollectorDefine.MAX_FINISH_TASK_NUM) {
m_Limit1 = 0;
}
if (m_Limit1 == m_Index) {
CFunction.writeLog("dataqueue",
" putFinishTaskBuffer In DataQueue Error #3, facno:" +
m_taskno, null);
return -1;
}
FinishTaskInfo m_FinishTaskInfo = (FinishTaskInfo) m_FinishTaskBuffer.get(
m_Limit1);
m_FinishTaskInfo.setTerminalId(m_termid);
m_FinishTaskInfo.setFacId(m_facid);
m_FinishTaskInfo.setTaskNo(m_taskno);
m_FinishTaskBuffer.set(m_Limit1, m_FinishTaskInfo);
m_HeadPointInfo.putIndex(m_Index);
m_HeadPointInfo.putLimit(m_Limit1);
m_FinishTaskBuffer.set(CollectorDefine.MAX_FINISH_TASK_NUM,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"putFinishTaskBuffer In DataQueue synchronized Error ", null);
return -1;
}
return 1;
}
public static FinishTaskInfo getFinishTaskBuffer() {
FinishTaskInfo m_FinishTaskInfo = null;
int m_SynFlag = -1;
synchronized (m_FinishTaskBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_FinishTaskBuffer.get(
CollectorDefine.MAX_FINISH_TASK_NUM);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
if (m_Index == m_Limit) {
return null;
}
m_Index++;
if (m_Index > CollectorDefine.MAX_FINISH_TASK_NUM - 1) {
m_Index = 0;
}
m_FinishTaskInfo = (FinishTaskInfo) m_FinishTaskBuffer.get(m_Index);
// wj add
// m_FinishTaskInfo.setTaskNo(m_FinishTaskInfo.getTaskNo()/10);
//
m_HeadPointInfo.putIndex(m_Index);
m_HeadPointInfo.putLimit(m_Limit);
m_FinishTaskBuffer.set(CollectorDefine.MAX_FINISH_TASK_NUM,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getFinishTaskBuffer In DataQueue synchronized Error ", null);
return null;
}
return m_FinishTaskInfo;
}
//SendedTaskBuffer
public static int getSendedTaskBufferNum() {
int m_SynFlag = -1;
int m_Num = 0;
synchronized (m_SendedTaskBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_SendedTaskBuffer.get(
CollectorDefine.MAX_FINISH_TASK_NUM);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
if (m_Limit >= m_Index) {
m_Num = m_Limit - m_Index;
}
else {
m_Num = CollectorDefine.MAX_FINISH_TASK_NUM - m_Index + m_Limit;
}
m_SendedTaskBuffer.set(CollectorDefine.MAX_FINISH_TASK_NUM,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getFinishTaskBufferNum In DataQueue synchronized Error ", null);
return -1;
}
return m_Num;
}
public static int putSendedTaskBuffer(long termid) {
if (termid < 0) {
CFunction.writeLog("dataqueue",
" putSendedTaskBuffer In DataQueue Error #1, termid:" +
termid, null);
return -1;
}
int m_SynFlag = -1;
synchronized (m_SendedTaskBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_SendedTaskBuffer.get(
CollectorDefine.MAX_FINISH_TASK_NUM);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
int m_Limit1 = m_Limit + 1;
if (m_Limit1 >= CollectorDefine.MAX_FINISH_TASK_NUM) {
CFunction.writeLog("dataqueue",
" putSendedTaskBuffer In DataQueue Error #2, termid:" +
termid, null);
m_Limit1 = 0;
}
if (m_Limit1 == m_Index) {
/* CFunction.writeLog("dataqueue",
" putSendedTaskBuffer In DataQueue Error #2, termid:" +
termid, null);
*/
return -1;
}
FinishTaskInfo m_FinishTaskInfo = (FinishTaskInfo) m_SendedTaskBuffer.get(
m_Limit1);
m_FinishTaskInfo.setTerminalId(termid);
m_SendedTaskBuffer.set(m_Limit1, m_FinishTaskInfo);
m_HeadPointInfo.putIndex(m_Index);
m_HeadPointInfo.putLimit(m_Limit1);
m_SendedTaskBuffer.set(CollectorDefine.MAX_FINISH_TASK_NUM,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"putFinishTaskBuffer In DataQueue synchronized Error ", null);
return -1;
}
return 1;
}
public static FinishTaskInfo getSendedTaskBuffer() {
FinishTaskInfo m_FinishTaskInfo = null;
int m_SynFlag = -1;
synchronized (m_SendedTaskBuffer) {
HeadPointInfo m_HeadPointInfo = (HeadPointInfo) m_SendedTaskBuffer.get(
CollectorDefine.MAX_FINISH_TASK_NUM);
int m_Limit = m_HeadPointInfo.getLimit();
int m_Index = m_HeadPointInfo.getIndex();
if (m_Index == m_Limit) {
return null;
}
m_Index++;
if (m_Index > CollectorDefine.MAX_FINISH_TASK_NUM - 1) {
m_Index = 0;
}
m_FinishTaskInfo = (FinishTaskInfo) m_SendedTaskBuffer.get(m_Index);
m_HeadPointInfo.putIndex(m_Index);
m_HeadPointInfo.putLimit(m_Limit);
m_SendedTaskBuffer.set(CollectorDefine.MAX_FINISH_TASK_NUM,
m_HeadPointInfo);
m_SynFlag = 1;
}
if (m_SynFlag <= 0) {
CFunction.writeLog("dataqueue",
"getFinishTaskBuffer In DataQueue synchronized Error ", null);
return null;
}
return m_FinishTaskInfo;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -