手机看片国产av无码,中国女人内谢69xxxxxa片,粗壮挺进邻居人妻无码,日本一本草久国产欧美日韩

Java試題筆試題目答案

時(shí)間:2022-09-26 11:39:16 試題 我要投稿
  • 相關(guān)推薦

Java試題筆試題目答案

  1)Java 中能創(chuàng)建 Volatile 數(shù)組嗎?

Java試題筆試題目答案

  能,Java 中可以創(chuàng)建 volatile 類型數(shù)組,不過(guò)只是一個(gè)指向數(shù)組的引用,而不是整個(gè)數(shù)組。我的意思是,如果改變引用指向的數(shù)組,將會(huì)受到 volatile 的保護(hù),但是如果多個(gè)線程同時(shí)改變數(shù)組的元素,volatile 標(biāo)示符就不能起到之前的保護(hù)作用了。

  2)volatile 能使得一個(gè)非原子操作變成原子操作嗎?

  一個(gè)典型的例子是在類中有一個(gè) long 類型的成員變量。如果你知道該成員變量會(huì)被多個(gè)線程訪問(wèn),如計(jì)數(shù)器、價(jià)格等,你最好是將其設(shè)置為 volatile。為什么?因?yàn)?Java 中讀取 long 類型變量不是原子的,需要分成兩步,如果一個(gè)線程正在修改該 long 變量的值,另一個(gè)線程可能只能看到該值的一半(前 32 位)。但是對(duì)一個(gè) volatile 型的 long 或 double 變量的讀寫是原子。

  3)volatile 修飾符的有過(guò)什么實(shí)踐?

  一種實(shí)踐是用 volatile 修飾 long 和 double 變量,使其能按原子類型來(lái)讀寫。double 和 long 都是64位寬,因此對(duì)這兩種類型的讀是分為兩部分的,第一次讀取第一個(gè) 32 位,然后再讀剩下的 32 位,這個(gè)過(guò)程不是原子的,但 Java 中 volatile 型的 long 或 double 變量的讀寫是原子的。volatile 修復(fù)符的另一個(gè)作用是提供內(nèi)存屏障(memory barrier),例如在分布式框架中的應(yīng)用。簡(jiǎn)單的說(shuō),就是當(dāng)你寫一個(gè) volatile 變量之前,Java 內(nèi)存模型會(huì)插入一個(gè)寫屏障(write barrier),讀一個(gè) volatile 變量之前,會(huì)插入一個(gè)讀屏障(read barrier)。意思就是說(shuō),在你寫一個(gè) volatile 域時(shí),能保證任何線程都能看到你寫的值,同時(shí),在寫之前,也能保證任何數(shù)值的更新對(duì)所有線程是可見(jiàn)的,因?yàn)閮?nèi)存屏障會(huì)將其他所有寫的值更新到緩存。

  4)volatile 類型變量提供什么保證?(答案)

  volatile 變量提供順序和可見(jiàn)性保證,例如,JVM 或者 JIT為了獲得更好的性能會(huì)對(duì)語(yǔ)句重排序,但是 volatile 類型變量即使在沒(méi)有同步塊的情況下賦值也不會(huì)與其他語(yǔ)句重排序。 volatile 提供 happens-before 的保證,確保一個(gè)線程的修改能對(duì)其他線程是可見(jiàn)的。某些情況下,volatile 還能提供原子性,如讀 64 位數(shù)據(jù)類型,像 long 和 double 都不是原子的,但 volatile 類型的 double 和 long 就是原子的。

  5) 10 個(gè)線程和 2 個(gè)線程的同步代碼,哪個(gè)更容易寫?

  從寫代碼的角度來(lái)說(shuō),兩者的復(fù)雜度是相同的,因?yàn)橥酱a與線程數(shù)量是相互獨(dú)立的。但是同步策略的選擇依賴于線程的數(shù)量,因?yàn)樵蕉嗟木程意味著更大的競(jìng)爭(zhēng),所以你需要利用同步技術(shù),如鎖分離,這要求更復(fù)雜的代碼和專業(yè)知識(shí)。

  6)你是如何調(diào)用 wait()方法的?使用 if 塊還是循環(huán)?為什么?(答案)

  wait() 方法應(yīng)該在循環(huán)調(diào)用,因?yàn)楫?dāng)線程獲取到 CPU 開(kāi)始執(zhí)行的時(shí)候,其他條件可能還沒(méi)有滿足,所以在處理前,循環(huán)檢測(cè)條件是否滿足會(huì)更好。下面是一段標(biāo)準(zhǔn)的使用 wait 和 notify 方法的代碼:

  // The standard idiom for using the wait method

  參見(jiàn) Effective Java 第 69 條,獲取更多關(guān)于為什么應(yīng)該在循環(huán)中來(lái)調(diào)用 wait 方法的內(nèi)容。



【Java試題筆試題目答案】相關(guān)文章:

銀監(jiān)局筆試題目及答案05-03

財(cái)務(wù)筆試題目及答案03-16

項(xiàng)目執(zhí)行筆試題目01-17

JavaWeb工程師筆試題題目04-20

面試題目及答案03-08

不能錯(cuò)過(guò)的關(guān)于面向?qū)ο蟮膉ava筆試題03-19

國(guó)企人力資源崗位筆試題目07-27

文秘面試題目及答案03-21

求職面試題目及答案11-07

網(wǎng)絡(luò)效應(yīng)試題目及答案09-06

主站蜘蛛池模板: 国产精品无码人妻在线| 2021无码最新国产在线观看| 亚洲精品久久久久久无码色欲四季| 2021亚洲国产成a在线| 国精品无码一区二区三区在线蜜臀| 乱人伦中文视频在线| 男人让女人爽的免费视频| 国产口爆吞精在线视频| 国产69久久精品成人看| 男人边做边吃奶头视频| 免费网站看sm调教视频| 亚洲日本va一区二区三区| 久久精品囯产精品亚洲| 久久综合久久自在自线精品自| 亚洲aⅴ天堂av天堂无码| 天天狠天天透天干天天| 国语自产视频在线| 国产拍拍拍无遮挡免费| 亚洲精品无码mv在线观看| 无码av免费毛片一区二区| 亚洲中文无码av永久| 综合久久婷婷综合久久| 欧美多毛肥胖老妇做爰| 欧美牲交videossexeso欧美| 丰满少妇被猛男猛烈进入久久| 人妻精品人妻无码一区二区三区| 久久精品无码一区二区小草| 国产午夜福利片在线观看| 色悠久久久久综合网伊| 亚洲精品久久66国产高清| 国产二级一片内射视频播放| 亚洲人成无码网站18禁10| 日韩欧美亚洲综合久久影院| 亚洲色大成成人网站久久| 久久久久人妻一区精品性色av| 国产日本精品视频在线观看| 日本免费一区二区三区高清视频| 亚洲青青草原男人的天堂| 国产伦子沙发午休系列资源曝光| 精品无码人妻夜人多侵犯18| 国产成人夜色高潮福利app|