java新增超時檢測

2021-09-01 12:53:07 字數 590 閱讀 3090

需求,在不同的ssm模組間,如果乙個模組給給乙個模組發任務,任務又好多,期間有某個任務死迴圈、崩了,怎麼辦?

所以在這裡要做乙個超時機制,監聽每個任務,原理很簡單,用乙個執行緒不斷去判斷任務是否超時。

這裡要考慮的問題只有乙個:要保證timer復用

timer:

public class timer extends thread 

public void run()

}}catch(exception e) }

}

應用場景:

...

//將任務加入佇列

queue_node.offer(「***x」);

long now = system.currenttimemillis();

int nowtime = now.intvalue();

map.put("***x", nowtime +"");

//啟動監聽超時執行緒

new timer(map).start();

thread.currentthread();

...

網路超時檢測

getsockopt setsockopt 網路超時檢測 必要性 避免程序在沒有資料時無限制的阻塞 當設定的時間到,程序從原操作返回繼續執行 3種方式可以 1.設定socket的屬性 so rcvtimeo 接收超時 so sndtimeo 傳送超時 struct timeval tv tv.tv ...

網路超時檢測 setsockopt()

setsockopt 函式 1 使用setsockopt 實現超時檢測時相比其他兩種方式的特點是 只要呼叫setsockopt函式一次,函式下發所有阻塞函式均可使用,且永久有效。阻塞函式在到達設定的時間時,會被系統認定為錯誤,使阻塞函式返回值小於0 include int setsockopt in...

java執行緒超時處理

專案中使用到業務系統呼叫webservice與其他系統的互動。在通過webservice介面進行資料互動時,由於網路或則其他原因往往會是我們的業務系統處於長時間等待。現在我們需求是這個業務只給他固定時間處理,在規定時間內沒處理完則進行超時處理。下面是超時任務的具體實現 public class my...