java 併發程式設計
1 併發程式設計的阻塞佇列 BlockingQueue,個人理解jar包底層多用這個類,實際開發中用的多的是 非阻塞佇列居多
阻塞佇列 (BlockingQueue)是Java util.concurrent包下重要的資料結構,BlockingQueue提供了執行緒安全的佇列訪問方式:當阻塞佇列進行插入資料時,如果佇列已滿,執行緒將會阻塞等待直到佇列非滿;從阻塞佇列取資料時,如果佇列已空,執行緒將會阻塞等待直到佇列非空。併發包下很多高階同步類的實現都是基於BlockingQueue實現的。
2 ConcurrentHashmap concurrentSkipListMap 兩者的區別
都是多執行緒下安全的 Map,前者不支援排序,因為是hash的,後者支援自然排序,和自定義排序,必須實現的是Compable而不是compatator介面
package note;
import java.util.Comparator;
import java.util.concurrent.ConcurrentSkipListMap;
public class Test {
public static void main(String[] args) {
ConcurrentSkipListMap<Student , String>
map = new ConcurrentSkipListMap<>();
map.put(new Student(66), "ddd");
map.put(new Student(55), "ddd");
System.out.println(map);
}
}
class Student implements Comparable<Student>{
private int age;
public int getAge() {
return age;
}
public Student(int age){
this.age=age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Student [age=" + age + "]";
}
@Override
public int compareTo(Student o) {
return this.getAge()-o.getAge();
}
}
結果如下:
{Student [age=55]=ddd, Student [age=66]=ddd}
相關文章
- Java併發程式設計Java程式設計
- 【Java併發程式設計】併發程式設計大合集-值得收藏Java程式設計
- Java併發程式設計 - 第十一章 Java併發程式設計實踐Java程式設計
- java-併發程式設計Java程式設計
- Java併發程式設計-CASJava程式設計
- Java併發程式設計:synchronizedJava程式設計synchronized
- Java 併發程式設計解析Java程式設計
- Java併發程式設計:LockJava程式設計
- Java併發程式設計---java規範與模式下的併發程式設計1.1Java程式設計模式
- Java併發程式設計-鎖及併發容器Java程式設計
- Java併發系列—併發程式設計挑戰Java程式設計
- java併發程式設計系列:java併發程式設計背景知識Java程式設計
- Java併發程式設計藝術Java程式設計
- Java併發程式設計實踐Java程式設計
- Java併發程式設計—ThreadLocalJava程式設計thread
- Java 併發程式設計 Executor 框架Java程式設計框架
- Java併發程式設計 -- ConditionJava程式設計
- Java併發程式設計 -- ThreadLocalJava程式設計thread
- Java併發程式設計之synchronizedJava程式設計synchronized
- Java併發程式設計基礎Java程式設計
- Java 併發程式設計要點Java程式設計
- Java併發程式設計——ThreadLocalJava程式設計thread
- java併發程式設計:同步容器Java程式設計
- Java併發程式設計實戰Java程式設計
- Java併發程式設計-synchronized指南Java程式設計synchronized
- 【Java併發程式設計】一、為什麼需要學習併發程式設計?Java程式設計
- Java併發程式設計之Java CAS操作Java程式設計
- Java併發程式設計:Java執行緒Java程式設計執行緒
- Java程式設計師修煉之道—併發程式設計Java程式設計師
- 《java併發程式設計的藝術》併發工具類Java程式設計
- 《java學習二》併發程式設計Java程式設計
- Java併發程式設計:阻塞佇列Java程式設計佇列
- Java併發程式設計——阻塞佇列Java程式設計佇列
- Java併發程式設計ForkJoin的DemoJava程式設計
- java併發程式設計之volatileJava程式設計
- Java併發程式設計實戰--FutureTaskJava程式設計
- Java併發程式設計的藝術Java程式設計
- Java對併發程式設計的支援Java程式設計