原创 手寫(chao)操作系統-編譯器的flag
本來學java併發,但是一直無法從彙編層面來理解synchronized、wait在底層是怎麼實現的,比如wait是cpu、寄存器、內存中3者交互數據,一直死循環實現的嗎?理論上也只有只能才能實現。就算有所說的通知機制,你不一直去
原创 convert-sorted-list-to-binary-search-tree
1、鏈接:convert-sorted-list-to-binary-search-tree 來源:牛客網 Given a singly linked list where elements are sorted in ascen
原创 convert-sorted-array-to-binary-search-tree
1、來源:convert-sorted-array-to-binary-search-tree 牛客網 Given an array where elements are sorted in ascending order, co
原创 construct-binary-tree-from-inorder-and-postorder-traversal
1、來源:construct-binary-tree-from-inorder-and-postorder-traversal 牛客網 Given inorder and postorder traversal of a tree
原创 climbing-stairs
1、來源:climbing-stairs 來源:牛客網 You are climbing a stair case. It takes n steps to reach to the top. Each time you can
原创 construct-binary-tree-from-preorder-and-inorder-traversal
1、來源:construct-binary-tree-from-preorder-and-inorder-traversal Given preorder and inorder traversal of a tree, con
原创 balanced-binary-tree
1、鏈接:balanced-binary-tree來源:牛客網 Given a binary tree, determine if it is height-balanced. For this problem, a heigh
原创 binary-tree-zigzag-level-order-traversal
1、來源:binary-tree-zigzag-level-order-traversal牛客網 Given a binary tree, return the zigzag level order traversal of it
原创 Java實現可GC的JVM(每個模塊有運行樣例)
Java實現簡易JVM github地址 主要模塊和樣例: 1. 讀取並解析class文件,如String、Thread等類(支持jdk8及以下) 部分類可能在demo運行時用到: zvm\bytecode\java\
原创 openjdk調試環境搭建和程序運行
參考: https://blog.csdn.net/faadfafasd/article/details/50539615 https://blog.csdn.net/tjiyu/article/details/53725247
原创 JAVA併發編程實戰-2Java內存模型:看Java如何解決可見性和有序性問題
學習上篇文章知道,可見性是由緩存導致的,有序性是由編譯優化導致的。禁用緩存和編譯優化,也就解決了這兩個問題。然而設置緩存和編譯優化的目的是爲了提供性能,直接禁用緩存和編譯優化顯然是不可行的; 故而需要按需緩存和編譯優化。J
原创 windows安裝使用JITWatch
原來在idea用了JITWatch插件,但是效果不好,換成直接使用。需要先安裝hsdis、然後從github拉JITWatch的代碼,然後編譯使用; 安裝hsdis-amd64.dll,hsdis-amd64.dll下載地
原创 JMH使用-查看JAVA的彙編語言
1.使用jmh http://openjdk.java.net/projects/code-tools/jmh/ 2.安裝maven,yum install maven 3.執行如下命令,會生成benchmark(基準測試)的te
原创 JAVA併發編程實戰-1可見性、原子性、有序性:併發編程BUG的源頭
關鍵詞:性能 是什麼: CPU運行速度、CPU從內存讀寫數據、IO設備從磁盤讀寫數據到內存,3者存在巨大的速度差異。CPU執行一天,相當於CPU從內存讀寫數據一年;讀寫內存一天,相當於IO設備讀寫十年。 性能往往是由最短的
原创 JAVA併發編程實戰-0學習攻略
JAVA併發 方法論:描繪全景圖,在圖中深入到細節 關鍵詞 爲什麼:性能; 是什麼:分工、同步、互斥 細節 1) 分工:一件事分爲多個任務,分給多個人同時做; 2) 同步:也叫協作。多個任務間可能有依賴(如A依賴B),