計時器:
public static void main(string args) throws interruptedexception }}
class mytask extends timertask
}
使用計時器安排任務,先2秒執行一次,然後4秒執行一次,再2秒執行一次,4秒執行一次,迴圈……:
public static void main(string args) throws interruptedexception }}
class task1 extends timertask
}class task2 extends timertask
}
使用計時器安排任務,周一到周五每天凌晨4點執行:
public class exercise2
}class task extends timertask
}
jdk1.4同步的三種方式:
同步**塊
使用synchronized(鎖物件)形式進行同步,多個執行緒執行同步**塊時如果使用的鎖物件相同,只能有乙個執行緒執行。
同步方法
使用synchronized關鍵字修飾方法,這時整個方法都是同步的,使用this作為鎖物件。
靜態同步方法
靜態方法也可以使用synchronized關鍵字修飾,方法內部的**也是同步的,這時的鎖物件是當前類的class物件。
同步**塊:
public class syncdemo1
}).start();
new thread(new runnable()
}).start(); }}
class printer
} public void print2()
}}
同步方法:
class printer
public synchronized void print2()
}
同步方法和同步**塊聯合使用實現同步(同步方法使用this當做鎖):
class printer
} public synchronized void print2()
}
同步方法和同步**塊聯合使用實現同步(靜態同步方法使用當前類的class物件當做鎖):
class printer
} public static synchronized void print2()
}
迴圈巢狀同步鎖可能導致死鎖:
private static object lock1 = new object();
private static object lock2 = new object();
public static void main(string args)
system.out.println("釋放lock2");
}system.out.println("釋放lock1");
}}).start();
new thread(new runnable()
system.out.println("釋放lock1");
}system.out.println("釋放lock2");
}}).start();
}
python計時器 python 計時器
import sysclassshowtime qwidget def init self super init self.istimestart false 標記時間是否開始計時 self.setwindowtitle qlable 顯示計時時間 self.lable time val qlabe...
python計時器單位 python計時器類
import time as t class mytimer def init self self.unit 年 月 日 時 分 秒 self.prompt 未開始計時 self.lasted self.start 0 self.stop 0 def str self return self.pro...
伺服器計時器與 Windows 計時器
說明 此文大部分內容摘自msdn,本人只是做了一點整理。如果有什麼異議,一切以msdn為準。一 引言 在 visual studio net 中有兩種計時器控制項 基於伺服器的計時器和標準的基於 windows 的計時器。基於 windows 的計時器為在 windows 窗體應用程式中使用而進行了...