//linestationprocessor類
//靜態資源(想保證集合類的執行緒安全可以使用--concurrenthashmap《基於分段鎖,效率要高於hashtable>)
public static mapdispatchtype = new hashmap<>();
//business_request_code 和 lasttype.getrequestcode() 鎖的資源型別
string business_request_code = bri.getbusiness_request_code();
//獲取快取是否含有當前車輛指令
dhmdispatchcommanddto lasttype = linestationprocessor.dispatchtype.get(device_id);
//過期時間
long expirationtime = 0;
long nowtime = system.currenttimemillis();
if(lasttype != null)
// 判斷兩種型別是否相同,不同即sleep5秒
if (lasttype != null && !business_request_code.equals(lasttype.getrequestcode()) && nowtime < expirationtime) catch (interruptedexception e)
isnowtime = system.currenttimemillis();
if (isnowtime > expirationtime)
} isnowtime += 5000;
nowtime = isnowtime;
}else
//快取中沒有記錄或是睡眠完成後在之前的時間加超時,未睡眠加5秒,睡眠需加10秒,實際 超時時間均為5秒
lasttype.setrequestcode(business_request_code);
lasttype.settimemsec(nowtime);
linestationprocessor.dispatchtype.put(device_id, lasttype);
php快取變數 使用PHP靜態變數當快取的方法
下面這個php的 例項,功能是幫助使用者重置密碼,requestresetpassword是接收使用者重置密碼的請求並且做了相應的檢查。為了更好的復用性,我將重置密碼的操作單獨分配到乙個新的resetpassword的函式,更改完密碼的後再呼叫sendemail向使用者傳送一封通知郵件。使用者請求重...
靜態變數 非靜態變數的區別
c 變數根據定義位置的不同,具有不同的作用域,作用域可分為6種 全域性作用域,區域性作用域,語句作用域,類作用域,命名作用域和檔案作用域。從作用域看 全域性變數具有全域性作用域。全域性變數只需在乙個原始檔中定義,就可以作用於所有的原始檔。當然,其他不包括全域性變數定義的原始檔需要用extern關鍵字...
靜態變數和非靜態變數
class string1 a和b編譯報錯,can not make a static referrence to no static filed s3,s4 分析 string s1 pingguo string s2 xiangjiao string s3 new string lizi str...