原创 鎖、重入鎖與條件
Java中的鎖框架指的是java.util.concurrent.locks這個包裏的,不同於對象的內置加鎖同步以及java.lang.Object的等待/通知機制,包含鎖框架的併發工具通過輪詢鎖、限時等待及其他方式改善了這種機制。
原创 AsyncTask解析
在Android AsyncTask中有以下幾個主要的函數: onPreExecute() doInBackground(Params…) onProgressUpdate(Progress…) onPostExecute(Result
原创 Android NDK調用不符合jni規範的so文件
我們在使用Android靜態加載so庫的時候,一般都需要這個so庫是符合jni命名規範的,像這樣: Java_全類名_方法名 但是可能會遇到一些比較特殊的情況,同事只給了你一個so庫,這個so庫並不是用的jni命名,除此之外,他還給了
原创 Map的方方面面
常見的Map實現類 Map類 特性 HashTable Map基於散列表的實現,HashTable繼承自抽象類Dictionary(Dictionary是一個被廢棄的接口),是線程安全的。 HashMap Map基於散列表
原创 同步器-倒計時門閂
Java中雖然提供了synchronized關鍵字對臨界區進行線程同步訪問,但是基於synchronized很難正確地編寫同步代碼,而倒計時門閂可以讓一條或多條線程在“門口”一直等待,直到門閂的計數變量爲0,線程纔可以繼續執行。 組成 類
原创 從不同角度看同一數據結構-訪問者模式
訪問者模式是一種複雜的設計模式,使用頻率不高,下面舉一個公司對員工業績考覈的例子,CEO和CTO對員工的考覈標準是不一樣的 員工抽象類 public abstract class Staff { public String n