自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (57)
  • 收藏
  • 关注

原创 (4.1.54)Android Context详解

文章目录一、 Context 接口的方法二、Context 应用场景三、Context 如何获取3.1 getApplicationContext()和getApplication()四、一个应用的Context个数4.1 ContextImpl4.2 ContextWrapper4.2.1 ContextThemeWrapper4.2.2 Activity、Service、Applicat...

2018-10-31 14:43:23 494

原创 (4.2.36.4)HTTP之OkHttp(四): OkHttp源码解析

文章目录一、OkHttp优点二、源码涉及的主要几个对象2.1 OkHttp网络请求流程2.2 Dispatcher任务调度2.2.1 Dispatcher的enqueue方法2.2.2 RealCall执行任务2.2.3 拦截器RetryAndFollowUpInterceptor:进行连接失败重新连接,以及重定向BridgeInterceptor:对请求头和响应头进行修改CacheInterce...

2018-10-27 21:05:35 1043

原创 (2.1.2.4)Java多线程(四)、线程池

文章目录一、new Thread的弊端二、 线程池的优势三、ThreadPoolExecutor3.1 ThreadPoolExecutor方法3.2 线程池的种类3.2.1 FixedThreadPool 可重用固定线程数3.2.2 CachedThreadPool 无限线程数3.1.3 SingleThreadExecutor 单线程化3.2.4 ScheduledThreadPool 定时周...

2018-10-27 18:24:17 243

原创 Android测评

文章目录一、Java之基本知识JVM相关ClassLoader相关Java ClassLoaderAndroid ClassLoader进程相关线程相关并发相关clone相关注解相关异常相关二、设计模式相关三、Android环境相关3.1 Gradle3.2 Proguard混淆3.3 CI平台 JenKins四、Android基础4.1 Activity 使用详解4.2 Fragment 使用详...

2018-10-26 10:43:14 713

原创 (4.6.29.5)插件化之代码加载:Dynamic-Load-Apk

文章目录一、概述1.1 DL对activity生命周期管理的改进1.2 DL对类加载器的支持1.3 DL对宿主(host)和插件(plugin)通信的支持1.4 DL对插件独立运行的支持1.5 DL对activity随意跳转的支持(DLIntent)和 对插件管理的支持(DLPluginManager)二、利用DL框架进行开发的步骤2.1 引入2.2 插件2.3 host三、源码解析3.1 核心概...

2018-10-23 10:18:09 302

原创 (4.2.48)MVPArms源码分析

MVPArms源码分析多module下全局Application的冲突和聚合问题全局配置信息GlobalConfigModuleGlobalConfigModule使用建造者模式将App的全局配置信息封装进Module(使用Dagger注入到需要配置信息的地方)。可以配置CacheFile,Interceptor等,甚至于Retrofit,Okhttp,RxCache都可以自定义配置因为使...

2018-10-23 10:05:11 696

原创 (4.6.30.1)组件化:Application离散式注册方案

文章目录一、Application功能分析二、问题分析三、入侵生命周期的离散式实现四、全局单例模式的离散式使用Application离散式注册方案一、Application功能分析在Android开发当中,一个APP有且只能有一个全局的Application对象,而且如果需要自定义的话,必须在AndroidManifest.xml中配置Application的使用主要涉及以下两个功能:...

2018-10-23 10:00:45 347

原创 (4.6.30)组件化:Android项目构架演变之路

文章目录一、简单开发模型二、单工程开发模型(业务逻辑分层模型)2.1 简单开发模型的宏观分层2.2 MOA原架构模型2.3 业务层的分层理念与设计模式2.3.1 分层理念2.3.2 MVC模式2.3.3 MVP模式三、组件模型3.1 为什么推进组件化?3.1 组件化?模块化?插件化?3.2 主App多Lib开发模型3.3 主App多子App开发模型四、组件化过程关键点4.1 组件切分和代码隔离4....

2018-10-23 09:52:11 1112

原创 (4.6.29)Android插件化框架总结

文章目录一、概述为什么需要插件化?1.1 发展历史1.2 需要知识1.2.1 Binder1.2.2 App打包流程1.2.3 App安装流程1.2.4 App启动流程1.2.5 资源加载机制1.2.6 Gradle配置打包1.3 主流框架Dynamic-load-apk详解DroidPlugin详解Small框架详解参考文献文章目录一、概述为什么需要插件化?1.1 发展历史1.2 需要知识1....

2018-10-23 09:26:15 721

原创 (2.1.8.5)Java并发编程:synchronized之ConcurrentHashMap

文章目录一、属性二、主要构造函数三、主要方法3.1 putVal3.1.1 initTable3.1.2 tabAt3.1.3 casTabAt3.1.4 helpTransfer3.1.5 addCountConcurrentHashMap 和 HashMap 的底层实现都是 数组+链表或红黑树 构成的。HashMap 的源码分析见:Java集合框架——HashMap源码分析Concurr...

2018-10-23 09:05:47 220

原创 (2.1.27.15)Java并发编程:Lock之CyclicBarrier公共屏障

文章目录一、使用示例二、源码分析2.1 构造方法及成员变量2.2 await2.3 reset三、CountDownLatch 和 CyclicBarrierCyclicBarrier 是一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很...

2018-10-23 09:04:13 391

原创 (2.1.27.14)Java并发编程:Lock之Condition等待通知

文章目录一、等待通知1.1 自旋实现的等待通知1.2 Object提供的等待通知1.3 显示锁提供的等待通知二、应用举例三、源码分析3.1 概述3.2 整体结构3.3 等待await3.4 通知signal四、Condition等待通知的本质五、总结讲了这么基于AQS和Lock实现的同步锁机制,我们可以发现它们主要是实现了同步并发的控制lock时获取锁,失败则进入队列等待。成功则自动向下执行...

2018-10-23 09:02:25 419

原创 (2.1.27.13)Java并发编程:Lock之CountDownLatch计数式独享锁

文章目录一、使用二、总体结构2.1 AQS的实现CountDownLatch是一种java.util.concurrent包下一个同步工具类,它允许一个或多个线程等待直到在其他线程中一组操作执行完成。相对于前文的锁,它主要实现了: 调用指定次release后,才会释放锁一、使用public static void testCountDownLatch(){ ...

2018-10-22 09:50:08 221

原创 (2.1.27.12)Java并发编程:Lock之Semaphore共享式不可重入锁

文章目录一、使用示例二、总体结构三、acquire()和release()大致流程3.1 AQS的实现3.1.1 非公平锁3.1.2 公平锁一、使用二、总体结构2.1 AQS的实现Semaphore是一种基于计数的信号量。它可以设定一个阈值,基于此,多个线程竞争获取许可信号,做完自己的申请后归还,超过阈值后,线程申请许可信号将会被阻塞一、使用示例 // 创建一个计数阈值为5的信号量对象 ...

2018-10-22 09:47:47 871 2

原创 (2.1.27.11)Java并发编程:Lock之ReentrantReadWriteLock 读写分离独享式重入锁

文章目录一、使用示例二、源码分析2.1 ReentrantReadWriteLock整体结构2.2 读写锁2.3 AQS的实现2.3.1 state的改变2.3.2 独享式写锁对应的AQS2.3.2.1 独享式写锁的获取2.3.2.2 独享式写锁的释放2.3.3 共享式读锁对应的AQS2.3.3.1 共享式读锁的获取2.3.3.2 共享式读锁的释放三、补充内容我们在介绍AbstractQueue...

2018-10-22 09:46:35 184 1

原创 (2.1.27.10)Java并发编程:Lock之ReentrantLock独享式重入锁

文章目录一、使用二、总体结构三、lock()与unlock()大致流程3.1 AQS的实现3.1.1 非公平锁3.1.2 公平锁四、tryLock()的实现ReentrantLock,即重入锁,是一个和synchronized关键字等价的,支持线程重入的互斥锁。只是在synchronized已有功能基础上添加了一些扩展功能。除了支持可中断获取锁、超时获取锁、非阻塞获取锁这些显示锁的常见功能外,...

2018-10-22 09:45:28 212

原创 (2.1.27.9)Java并发编程:Lock之AQS

文章目录一、AQS方法简介1.1 钩子方法1.2 模板方法1.2.1 独占式获取与释放同步状态1.2.2 共享式获取与释放同步状态1.2.3 其他1.3 借助AQS实现的独占锁示例二、AQS具体实现及内部原理2.1 AQS中FIFO队列2.1.1 Node节点结构2.1.2 AQS添加尾节点2.1.3 AQS添加头节点2.2 独占式同步状态获取与释放2.2.1 独占式同步状态获取acquire2....

2018-10-22 09:43:45 301

原创 (2.1.27.8)Java并发编程:Lock显示锁

文章目录一、concurrent包的设计二、Lock接口(以及相关实现类)UML类图三、Lock接口一、concurrent包的设计要了解Java为我们提供的基于Lock接口(以及相关实现类)实现的锁功能,我们首先要看一下整个concurrent包下的设计。具体设计如下所示:【concurrent包的设计】在上图中,我们大致可以看出courrent包下的整体结构。整个包大致分为了三层。...

2018-10-22 09:40:16 245

原创 (2.1.27.7)Java并发编程:Object.wait/notify

文章目录一、示例二、为什么要使用synchronized?三、代码执行过程分析3.1 Object.wait方法实现3.2 Object.notify()/notifyAll方法实现Java Object对象中的wait,notify,notifyAll是定义在Object类的实例方法,用于控制线程状态。三个方法都必须在synchronized 同步关键字所限定的作用域中调用,否则会报错jav...

2018-10-22 09:35:28 268

原创 (2.1.27.6)Java并发编程:synchronized

文章目录一、synchronized的三种使用方式1.1 证明当前普通的同步方法,锁式当前实例对象1.2 证明对于静态同步方法,锁式当前类的Class对象二、Synchronized结合Java Object对象中的wait,notify,notifyAll三、Synchronized底层实现的前备知识3.1 Java对象的内存布局与对象头3.1.1 “Mark Word“数据结构3.2 sync...

2018-10-22 09:31:54 533

原创 (2.1.27.5)Java并发编程:Volatile

Java语言提供了一种稍弱的同步机制,即volatile变量,用来确保将变量的更新操作通知到其他线程。当把变量声明为volatile类型后,编译器与运行时都会注意到这个变量是共享的,因此不会将该变量上的操作与其他内存操作一起重排序。volatile变量不会被缓存在寄存器或者对其他处理器不可见的地方,因此在读取volatile类型的变量时总会返回最新写入的值。当一个变量定义为 volati...

2018-10-22 09:10:00 254

原创 (2.1.27.4)Java并发编程:原子类Atomic

在Java中的并发包中了提供了以下几种类型的原子类来来解决线程安全的问题。分为基本数据类型原子类数组类型原子类引用类型原子类字段类型原子类。因为其内部原理都差不多一致。这里会对每种类型的原子类抽一个来介绍。一、原子类的使用方式public class AtomicTest{ //public static volatile int race=0;//1 public sta...

2018-10-22 09:05:59 271

原创 (2.1.27.3)Java并发编程:CAS操作

文章目录一、物理计算机的缓存锁1.1 缓存锁与CAS(Compare-and-Swap)的关系二、Java世界的CAS操作(Compare-and-Swap)三、CAS在Java中的实现参考文献在前文中我们描述过,物理机计算机的数据缓存不一致的时候,我们一般采用两种方式来处理。一,通过总线加锁的形式,二,通过缓存一致性协议来操作。体现缓存一致性的正是CAS(Compare-and-Swap)操...

2018-10-19 18:05:50 248

原创 (2.1.27.2)Java并发编程:JAVA的内存模型

文章目录一、Java的内存模型二、工作内存和主内存的交互2.1 八种原子操作规则三、Java内存模型的需要解决的问题3.1 工作内存的可见性问题3.2 重排序在多线程中引发的问题四、Happens-Before 原则4.1 程序次序规则4.2 锁定规则4.3 volatlie变量规则4.4 线程启动规则4.5 线程终止规则4.6 线程中断规则4.7 对象终结规则4.8 传递性规则Java定义...

2018-10-19 18:01:50 304

原创 (2.1.27.1)Java并发编程:并发

文章目录一、 并发的起源二、物理计算机的内存模型三、缓存结构在多线程模型中引发的缓存不一致问题3.1 通过总线加LOCK#锁的方式3.2 通过缓存一致性协议的方式四、CPU(处理器)的乱序执行(out-of-orderexecution)4.1 数据依赖4.2 重排序规则(as-if-serial)在物理计算机中CPU为了提高处理速度,添加了高速缓存与CPU乱序执行一、 并发的起源为...

2018-10-19 17:56:46 251

原创 (2.1.27)Java并发编程

参考文献Java并发编程Java并发编程之Java内存模型Java并发编程之Java CAS操作Java并发编程之VolatileJava并发编程之synchronizedJava并发编程之原子类Java中Volatile关键字详解Java显式锁学习总结之六:Condition源码分析java并发编程之Condition深入研究 Java Synchronize 和 L...

2018-10-16 18:58:00 853

转载 欢迎使用CSDN-markdown编辑器--备份

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2018-10-16 16:38:34 131

简单聊天室java课程设计

简单聊天室java课程设计 java 课程设计 java游戏

2012-11-26

简单QQjava课程设计

java 课程设计 java游戏 简单QQjava课程设计 内含文档

2012-11-26

java个人事务管理课程设计

java 课程设计 java个人事务管理课程设计 内附文档

2012-11-25

Java语言层序设计基础篇

Java语言层序设计基础篇

2012-11-24

java五子棋课程设计

ppt java 课程设计 java五子棋课程设计

2012-11-24

java计算器课程设计

java计算器课程设计 课程设计 java

2012-11-24

java拼图游戏课程设计

课程设计 java java游戏 拼图 java拼图

2012-11-24

java模拟钢琴

java模拟钢琴 java游戏 课程设计 java

2012-11-24

抓不住的方块

抓不住的方块 java游戏 课程设计 游戏

2012-11-24

华容道java课程设计

华容道java课程设计

2012-11-24

java华容道拼图课程设计

java华容道拼图课程设计额 课程设计 java 游戏

2012-11-24

java烟花效果

java烟花效果

2012-11-24

购物管理系统课程设计

购物管理系统课程设计

2012-11-24

选课管理系统

选课管理系统

2012-11-16

教师管理系统课程设计

教师管理系统课程设计

2012-11-16

成绩管理系统课程设计

成绩管理系统课程设计

2012-11-16

C#+数据库系统开发+案例精选

C#+数据库系统开发+案例精选 配套教材

2012-11-16

计算机网络\计算机网络技术期末考试模拟试题及答案

1. 在采用电信号表达数据的系统中,数据有数字数据和 模拟 数据两种。 2. 域名系统DNS是一个 分布式数据库 系统。 3. TCP/IP的网络层最重要的协议是 IP互连网协议,它可将多 个网络连成一个互连网。 4. 在TCP/IP层次模型的第三层(网络层)中包括的协议主要有 ARP 及 RARP IP. ICMP. . 。 5. 光纤通信中,按使用的波长区之不同分为 单模. 信方式和多 模方式。

2012-11-16

计算机网络期末试题及答案计算机网络期末试题

1、在计算机网络的定义中,一个计算机网络包含多台具有______功能的计算机;把众多计 算机有机连接起来要遵循规定的约定和规则,即_______;计算机网络的最基本特征是 _________。 2、常见的计算机网络拓扑结构有:__________、__________、 、和 ___________。 3、常用的传输介质有两类:有线和无线。有线介质有________、__________、__________。 4、网络按覆盖的范围可分为广域网、_______、_______。 5、TCP/IP协议参考模型共分了___层,其中3、4层是_______、_______。 6、电子邮件系统提供的是一种__________服务,WWW服务模式为______________。 7、B类IP地址的范围是_______________________。

2012-11-16

2010-2011安阳工学院计算机网络期末试题

?常用的信道复用技术有哪些 常用的信道复用技术有哪些常用的信道复用技术有哪些 常用的信道复用技术有哪些? ?? ? 答:为了通过共享信道、最大限度提高信道利用率。 频分、时分、码分、波分。 4、 TCP/IP分层 5、 协议/ARP的名词解释 协议为进行网络中的数据交换而建立的规则、标准或约定称为网络协议

2012-11-16

进程保活(一:JNI层初探):单向循环式启动服务

http://blog.csdn.net/fei20121106/article/details/52005691 技术关键点:开启native子进程,循环间隔的不停去启动下服务,也不判断服务是否die了。而且,如果die了,但是间隔还没到,还是不会启动服务 结论:单杀可以杀死,force close 5.0以上无效,5.0以下部分手机无效,第三方软件下无效,且无法保证实时常驻,且费电 这是要建立在保证c进程不挂的基础上,才能轮询,但是就目前来看,只有5.0以下的非国产机才会有这样的漏洞。也就是说在force close的时候,系统忽略c进程的存在,5.0以上包括5.0的哪怕源生系统也会连同c进程一起清理掉,国产机就更不用说了。就算是这样,在5.0以下的非国产机上,如果安装了获取root权限的360\cm的话,也是可以直接清理掉,也就是说会失效 而且他不但不算守护,而且还是单向的,也就是说只能a保b,b保不了a;a保b也不是在b死了立刻拉起来,要等到了时间才会去拉。

2016-07-23

MFC类库详解

MFC类库详解

2012-12-04

日程管理控件基于jQuery+的日历控件

日程管理控件基于jQuery+的日历控件

2012-12-04

jsp在线聊天室系统

jsp在线聊天室系统

2012-12-04

文件管理系统课程设计

课程设计 jsp 文件管理系统

2012-12-04

签到系统课程设计

签到系统课程设计

2012-12-04

JSP动态网站开发基础与上机指导+答案

JSP动态网站开发基础与上机指导+答案

2012-12-04

JSP办公自动化管理系统

JSP办公自动化管理系统JSP 办公自动化 管理系统 课程设计

2012-12-04

jsp+日历控件+好用的+两款

jsp+日历控件+好用的+两款

2012-12-04

Java Web开发典型模块大全

Java Web开发典型模块大全

2012-12-04

jsp常用JAR包

jsp常用JAR包

2012-12-04

会议室系统jsp课程设计

简介   本EasyJF iula会议室系统主要用于EasyJF开源团队的成员网上会议使用,会议系统模拟传统的会议形式,可以同时开设多个不同主题的会议室,每个会议室需要提供访问权限控制功能,会议中能够指定会议发言模式(分为排队发言、自由发言两种),系统能自动记录每个会议室的发言信息,可以供参会人员长期查阅。   会议系统的用户支持游客帐号参加会议,同时也提供跟其它用户系统的接口,比如EasyJF官网中的开源论坛系统。   会议系统暂时使用文字聊天的方式,并提供语音及视频的接口。   该系统现在是一个开源项目,项目官方网址www.easyjf.com,有兴趣的朋友都可以参加进来一起开发,通过SVN管理代码协同及版本控制。   svn地址:http://svn.easyjf.com/repository/easyjf/easyjfiula   用户名:easyjf   密码:easyjf 附加说明:本安装在wlrserver下安装成功通过 演示地址:   http://www.easyjf.com/chatRoom.ejf?easyJWebCommand=show&ejid=2538093638804337 1、安装数据库 cd %iula_home% mysql -u root -p drop database iuladb; create database iuladb; alter database iuladb default character set UTF8; grant all privileges on iuladb.* to iuladbuser@localhost identified by 'pwd$iuladbuser'; quit; type src\iula_mysql.sql | mysql -uroot -p iuladb 当然,也可以直接使用my sql front等工具手动执行数据库脚本安装。其中iula_mssql.sql为mssql的脚本,iula_mysql.sql为sql的脚本。 2、修改配置 src\main\easyjf-dbo.xml 修改src\main\easyjf-dbo.xml文件中数据库连接相关字串为 &lt;!--以下为内容开始--&gt; <property name="easydbo.connection.driver_class">org.gjt.mm.mysql.Driver</property> <property name="easydbo.connection.password">pwd$iuladbuser</property> <property name="easydbo.connection.url">jdbc:mysql://127.0.0.1:3306/iuladb</property> <property name="easydbo.connection.username">iuladbuser</property> <property name="easydbo.dialect">com.easyjf.dbo.sql.MySqlQuery</property> <property name="easydbo.show_sql">true</property> &lt;!--以下为内容结束--&gt; 3、执行编译及发布  双击bin\build.bat 选择war 即会生成一个release\easyjf-iula-0.1.0.war文件,把该文件拷到tomcat的webapps目录下面,重启tomcat即可。 4、运行程序 http://localhost:8080/easyjf-iula-0.1.0/ 首先添加一个会议室,注意最大参与人数必须大于1,刷新时间最好大于3000,不能为0。访问权限及及权限值设置中不要填写数据。然后保存! 然后点击启动会议室 启动成功后,点击会议名标标题,弹出最大化窗口进入会议室主界面。 技术思路: 用AJAX+J2EE实现一个网上会议室系统 http://www.easyjf.com/html/20060514/2722156783676355.htm 需求采集 http://www.easyjf.com/html/bbs/20060605/20298030-1609753.htm 关于怎么样加入EasyJF团队 http://www.easyjf.com/html/20060521/3212438514563392.htm 《EasyJF协同及版本控制》 http://www.easyjf.com/html/20060527/3393419193595177.htm 《EasyJF团队章程》 http://www.easyjf.com/aboutItemGroup.htm 《EasyJF团队成员工作手册》 http://www.easyjf.com/html/20060425/23564046-7798686.htm 《EasyJF成员名单》 http://www.easyjf.com/itemMember.ejf 《EasyJF项目列表》 http://www.easyjf.com/itemGroup.ejf

2012-12-04

云网OA系统

云网OA系统

2012-12-04

jsp聊天室课程设计

jsp聊天室课程设计

2012-12-02

Javascript动态网页(实例版)

java Javascript 网页 光盘代码 Javascript动态网页(实例版)

2012-12-02

仓库管理系统java课程设计

课程设计 java java游戏 仓库管理系统java课程设计

2012-11-30

java学生成绩系统access课程设计

课程设计 java java游戏java学生成绩系统access课程设计 内含文档

2012-11-30

JAVA 图书管理系统课程设计

课程设计 java java游戏 JAVA 图书管理系统课程设计 内含文档

2012-11-28

音乐播放器java课程设计

课程设计 java java游戏音乐播放器java课程设计 内含文档

2012-11-28

汉诺塔java课程设计

课程设计 java java游戏 汉诺塔java课程设计 内含文档

2012-11-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除