IO和網(wǎng)絡(luò)_4月6日
// 懶漢單例 DCL double check lock
public class MyLazy {
? ? private static MyLazy myLazy;
? ? private MyLazy(){
? ? ? ? System.out.println("new MyLazy()");
? ? }
? ? public static MyLazy getInstance(){
? ? ? ? if(myLazy == null){
? ? ? ? ? ? synchronized (MyLazy.class){
? ? ? ? ? ? ? ? if(myLazy==null){
? ? ? ? ? ? ? ? ? ? myLazy = new MyLazy();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? return myLazy;
? ? }
}
// 餓漢單例
public class MyHungry {
? ? private final static MyHungry myHungry = new MyHungry(); // final 所以一直指向它,其實(shí)也沒(méi)人修改它的地址
? ? private MyHungry(){
? ? ? ? System.out.println("new MyHungry()");
? ? }
? ? public static MyHungry getInstance(){
? ? ? ? return myHungry;
? ? }
}
// new Thread 操作
? ? ? ? new Thread() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void run() {
? ? ? ? ? ? ? ? System.out.println("new Thread()");
? ? ? ? ? ? }
? ? ? ? }.start();
? ? ? ? new Thread(new Runnable() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void run() {
? ? ? ? ? ? ? ? System.out.println(Thread.currentThread().getName());
? ? ? ? ? ? ? ? System.out.println("new Thread(new Runnable(){");
? ? ? ? ? ? }
? ? ? ? }, "RunnableThread").start();
網(wǎng)絡(luò)通信不是主機(jī)之間,而是進(jìn)程之間
Client Server
Browser Server
單例模式
餓漢 private get()
懶漢 double check lock 之后再 new
queue.notify();
queue.wait();
queue.remove();
陰影
I shall be your eyes
死亡騎士
I am the Darkness
As you order
At last
For the Lich King
Ride or die
恐懼魔王
Greetings
What is it now?
Agreed
Very well
Die
I hunger
地穴領(lǐng)主
Speak
侍僧
I wish only to serve
Yes, Master