IT十八掌掌第八天課程總結

今天學完IT十八掌第八天java基礎課程:


學習內容:


複習jar命令

---------------

   

    [將類路徑下的類打成jar文件]    

        jar cvf myjar.jar -C classes/ .

        jar cvfe myjar.jar a.a1.a11.a111.A -C classes/ .        //e指定的入口點.

    [使用java -jar參數來運行程序]

        java -jar myjar.jar                            //執行jar文件

        java -jar myjar.jar    a.a1.a11.a111.A            //執行jar文件指定入口點。

進程

-----------------

    進程之間內存式隔離的。內存不共享。

        eg:掃雷,qq

線程

-----------------

    程序執行過程中,併發執行的代碼段。

    線程之間可以共享內存。

    Thread : 線程類。

        start()        //通知cpu,可以開始執行該線程。

        run()        //線程具體執行的代碼段。

    Thread t = new Thread();

    t.start();

    Thread.currentThread()        //得到當前的執行線程。

    yield()                        //讓線程放棄cpu的搶佔權。

    join()                        //等待當前進程完成,

    sleep(int mils)                //讓當前線程休眠指定的毫秒數.

    線程安全:增加了同步處理。確保在同一時刻,只有一個線程執行同步代碼。

             同步方法使用的當前對象作爲同步對象。

             靜態方法可以加同步處理,使用Class作爲同步對象。

KTV : 

    Box :        //3

    Waiter        //守護線程 daemon  Thread.setDaemon(true);

    yield()

    join()

    sleep(int ms);

    setDaemon(true);    //線程啓動前設置

    isDaemon();            //指定線程是否是守護線程

    start();            //啓動線程

    run();                //

    notify()            //選擇一個監控器對象等待隊列中的線程進行通知。

    notifyAll()            //選擇所有監控器對象等待隊列中的線程進行通知。

    wait()                //將當前線程放入監控器的等待隊列中。

    wait(int n )        //線程進入到等待隊列後,最多等待n長時間,時間一旦,自動喚醒。


生產者 + 消費者問題

------------------------

    List list = new ArrayList(); //數組列表

    List<Integer> list = new ArrayList<Integer>();    //使用泛型,創建一個整數數組列表



遇到的問題:

  1,多線程的生產消費問題。

        |---兩個線程操作同一個資源,首先需要保證操作資源時同步(synchronized),其次應該保證資源存             取和取出是有意義的。也就是線程之間通信正常(notify,wait)。還有就是注意死鎖。

  2,集合List以及泛型使用。

        |---將以特定次序存儲元素。所以取出來的順序可能和放入順序不同。

        元素是有序的,元素可以重複,因爲該集合體繫有索引。

  3,多線程中的死鎖問題,什麼時候該使用yield(),notify,notifyAll,wait()

        死鎖是進程死鎖的簡稱, 產生死鎖的原因有兩個

             一種原因是系統提供的資源太少了,遠不能滿足併發進程對資源的需求。

            另一種原因是由於進程推進順序不合適引發的死鎖。

需要幫助的問題

        1,生產消費問題

        2,死鎖

        3,集合


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章