{"version":1,"pages":[{"id":"-L_kgVlAqcNIYNGQ6gpS","title":"Introduction","pathname":"/concurrent/develop","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVkiqM8EbGE3HXuy","title":"RedSpider社区简介","pathname":"/concurrent/develop/redspider","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVklA2oQDNzwccMo","title":"本书作者介绍","pathname":"/concurrent/develop/author","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVkmZ8fDjX2DZ6Ik","title":"本书简介","pathname":"/concurrent/develop/readme","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVknKleBI1lMFatt","title":"第一篇：基础篇","pathname":"/concurrent/develop/di-yi-pian-ji-chu-pian","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVkoNrvhpDg6hdAS","title":"1 进程与线程基本概念","pathname":"/concurrent/develop/di-yi-pian-ji-chu-pian/1","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_kgVkpbRoii1WxxUkz","title":"2 Java多线程入门类和接口","pathname":"/concurrent/develop/di-yi-pian-ji-chu-pian/2","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_kgVkqONhH1lFwCzZ3","title":"3 线程组和线程优先级","pathname":"/concurrent/develop/di-yi-pian-ji-chu-pian/3","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_kgVkrjaUhqUa-zWJY","title":"4 Java线程的状态及主要转化方法","pathname":"/concurrent/develop/di-yi-pian-ji-chu-pian/4","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_kgVksPgBAfO1Ro9pS","title":"5 Java线程间的通信","pathname":"/concurrent/develop/di-yi-pian-ji-chu-pian/5","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_kgVktu9JlnGlg3LFa","title":"第二篇：原理篇","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVkuB5YjRzXwBuKs","title":"6 Java内存模型基础知识","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian/6","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_kgVkvQ0anwGmsZ4dJ","title":"7 重排序与happens-before","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian/7","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_kgVkw5BKgJzwkV0jb","title":"8 volatitle","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian/8","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_kgVkxVBF0ZR05VTRi","title":"9 synchronized与锁","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian/9","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_kgVky_7FpNFlbqof-","title":"10 CAS与原子操作","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian/10","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_kgVkz4FDOg35Khyj9","title":"11 AQS","pathname":"/concurrent/develop/di-er-pian-yuan-li-pian/11","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_kgVl-miodHsS7Hhgo","title":"第三篇：JDK工具篇","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian","siteSpaceId":"sitesp_lAy4G","description":""},{"id":"-L_kgVl0uaqqSDLkibYJ","title":"12 线程池原理","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/12","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl1Hh2jfsw3hmyM","title":"13 阻塞队列","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/13","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl26F4hlDyIMY5D","title":"14 锁接口和类","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/14","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl3fngVGLwcMNNF","title":"15 并发集合容器简介","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/15","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl4I1H0bQgibFPT","title":"16 CopyOnWrite","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/16","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl5XayFYOt_wnLq","title":"17 通信工具类","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/17","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl64Z5FJaS3P6X3","title":"18 Fork/Join框架","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/18","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl7dN5gcqbUVdHb","title":"19 Java 8 Stream并行计算原理","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/19","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_kgVl8LQNeDHs0coIO","title":"20 计划任务","pathname":"/concurrent/develop/di-san-pian-jdk-gong-ju-pian/20","siteSpaceId":"sitesp_lAy4G","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5HvtGHtORY7kbPZku","title":"Introduction","pathname":"/concurrent","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIdbv-BCDE9gqHLk","title":"RedSpider社区简介","pathname":"/concurrent/redspider","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIdccSuBW9J-1Iwt","title":"本书作者介绍","pathname":"/concurrent/author","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIddWBAVdfQYgSDZ","title":"本书简介","pathname":"/concurrent/readme","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIdeGLkKU2GXnPwD","title":"第一篇：基础篇","pathname":"/concurrent/di-yi-pian-ji-chu-pian","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIdfdmhZ_HfwbSPi","title":"1 进程与线程基本概念","pathname":"/concurrent/di-yi-pian-ji-chu-pian/1","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_5TIdgND4VyiNBzstw","title":"2 Java多线程入门类和接口","pathname":"/concurrent/di-yi-pian-ji-chu-pian/2","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_5TIdhqzplLcelAGnJ","title":"3 线程组和线程优先级","pathname":"/concurrent/di-yi-pian-ji-chu-pian/3","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_5TIditnKmeH8--e5M","title":"4 Java线程的状态及主要转化方法","pathname":"/concurrent/di-yi-pian-ji-chu-pian/4","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_5TIdjXEohc0sQT-Rx","title":"5 Java线程间的通信","pathname":"/concurrent/di-yi-pian-ji-chu-pian/5","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第一篇：基础篇"}]},{"id":"-L_5TIdksykFRh2mPpMq","title":"第二篇：原理篇","pathname":"/concurrent/di-er-pian-yuan-li-pian","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIdlafGGRbn6hFQT","title":"6 Java内存模型基础知识","pathname":"/concurrent/di-er-pian-yuan-li-pian/6","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_5TIdmfyZ7yDDiaeQs","title":"7 重排序与happens-before","pathname":"/concurrent/di-er-pian-yuan-li-pian/7","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_5TIdn6ISiIL1lFxLB","title":"8 volatitle","pathname":"/concurrent/di-er-pian-yuan-li-pian/8","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_5TIdoIF6ZNoN-kA8q","title":"9 synchronized与锁","pathname":"/concurrent/di-er-pian-yuan-li-pian/9","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_5TIdpO35AP9nvUslO","title":"10 CAS与原子操作","pathname":"/concurrent/di-er-pian-yuan-li-pian/10","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_5TIdqyxK2Kfs_aNQw","title":"11 AQS","pathname":"/concurrent/di-er-pian-yuan-li-pian/11","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第二篇：原理篇"}]},{"id":"-L_5TIdryhA0d5JDX28i","title":"第三篇：JDK工具篇","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian","siteSpaceId":"sitesp_C84Mp","description":""},{"id":"-L_5TIdsEdSlfivBfP8J","title":"12 线程池原理","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/12","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIdt1nBxf-FB5abB","title":"13 阻塞队列","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/13","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIduwsPkl9C0g1Lv","title":"14 锁接口和类","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/14","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIdvrJrdFnOuw1At","title":"15 并发集合容器简介","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/15","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIdwTyseOgUjSFFM","title":"16 CopyOnWrite","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/16","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIdxfSEDb7rQJgJe","title":"17 通信工具类","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/17","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIdywbmd2XU9G9dM","title":"18 Fork/Join框架","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/18","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIdzKwNt21LKd-P8","title":"19 Java 8 Stream并行计算原理","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/19","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]},{"id":"-L_5TIe-9V2VKLA1nLkg","title":"20 计划任务","pathname":"/concurrent/di-san-pian-jdk-gong-ju-pian/20","siteSpaceId":"sitesp_C84Mp","description":"","breadcrumbs":[{"label":"第三篇：JDK工具篇"}]}]}