原创 Windows下三種激活阻塞線程的方法

多線程編程經常遇到以下問題:主線程退出前,後臺線程也優雅的退出。如果後臺線程處於阻塞狀態,則需要把阻塞線程激活。本文討論Windows下面,三種激活阻塞線程的方法。 第一種:利用WaitForMultipleObjects函數讓線程處於

原创 Linux中kfifo數據結構的精妙之處:即使溢出仍然正確

kfifo是linux內核中的環形緩衝區,實現了先進先出的隊列數據結構。以下爲kfifo的數據結構定義(內核版本2.6.33.20): struct kfifo { unsigned char *buffer; //

原创 漢字從拼音到文字的完整映射表

背景:項目需要用到中文輸入。一種方案是調用系統的中文輸入法,一種方案是寫一個簡單的拼音輸入法內嵌到軟件中。兩種方案各有優缺點,此處不講,但後一種方案需要拼音到文字的完整映射表。網上有工具可以把微軟拼音的字庫提取出來,但我這裏卻始終不成功。

原创 VC 2010 非標準STL容器hash map代碼分析

綜述 兩個主要的文件:xhash和hash_map,所在的目錄是C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include。提供hash_map和hash_multimap

原创 因不懂IOCP被鄙視,此處留下記號

內容待完善

原创 Spring Framework Reference Documentation 3.2.8.RELEASE 第23章中文翻譯

23. JMS (Java Message Service)                                                                                     【 中

原创 設置VMWare虛擬機可以被外網訪問

環境:VMWare 10;主機爲Windows7,IP地址通過DHCP獲得;虛擬機爲Windows XP 步驟: Client操作系統(Windows XP)中 1.設置爲自動獲得IP Host操作系統(

原创 Java集合類彙總記錄-- apache.commons4(TreeList)

通常,Tree是Tree,List是List,兩者不太可能混在一起。但apache-commons庫卻用tree實現了實現了List的接口,也就是TreeList類。與標準的LinkedList相比,TreeList稍微浪費一點空間,但常

原创 Javac編譯時報“非法的前向引用”,以及Eclipse自帶的Java編譯器的缺陷

編譯以下類的時候,如果切換WARNING_LEVEL的賦值方式爲"= StatusDef.WARNING",javac會報“非法的前向引用”。 Eclipse自帶的編譯器會編譯通過,這是Eclipse編譯器的一個缺陷。 產生這個編譯錯誤的

原创 Java String類涉及到UTF16編碼的幾個概念

Java中的String是採用UTF16編碼,Character類和String類的文檔中涉及到了Code Unit、Code Point、Surrogate Pair等若干概念。要理解UTF16編碼,必須理解這些概念,但不少人對它們都是

原创 完整導出IntelliJ IDEA的快捷鍵

工欲善其事,必先利其器。 經常和代碼打交道的人,熟練使用IDE快捷鍵那是必須的,因爲快捷鍵可以把你從各種羅嗦事中解放出來。比如,如果沒有快捷鍵,你就需要經常性的暫停高速運行的大腦,右手憑記憶摸到鼠標,然後

原创 JTI + JNI,爲Java程序提供獲取JVM內部信息的通道

首先,JTI是啥? HotSpot JVM是使用C++寫的,在操作系統層面來看,java.exe進程與其他進程並無特別之處。任何一個進程都可以加載第三方的DLL,JTI就是java.exe開放出來的向Java.exe進程注入dll的接口。

原创 Java代碼質量監控工具Sonar安裝

1.  代碼質量七宗罪 Sonar是一個代碼質量管理系統,它的幫助文檔開篇明義,提出了代碼質量的七宗罪,總結的比較到位,不妨一看: 1.        Bug和隱藏Bug(Bugs and Potential Bugs) 2.      

原创 JavaScript中的比較操作符

用了一段時間的JavaScript,總是感覺這門語言非常不嚴謹,其中一個很難完全搞懂的地方就是比較操作符。這幾天重翻JavaScript -- The Definitive Guid,做個摘要,加深理解。 JavaScript中的類型

原创 Java集合類彙總記錄--JDK篇

接口類圖 Java Collection由兩套並行的接口組成,一套是Collection接口,一套是Map接口。如下圖 公共抽象類AbstractCollection 要求派生類實現iterator()方法,AbstractCo