java
perfectnihil
java,dart,python,js,lua
展开
-
java在不同情况下锁对象探索
先从最简单的开始***************************************分割线 demo1***************************************public static void main(String args[]){ final Class1 c1 = new Class1(); Thread t1 =原创 2017-07-30 23:04:41 · 328 阅读 · 0 评论 -
多线程补充(三)volatile关键字
在前面Java内存模型的基础上,我们知道volatile保证了有序性和可见性那么其原理是什么呢?参考:http://www.importnew.com/24082.htmlvolatile的实现原理1.可见性处理器为了提高处理速度,不直接和内存进行通讯,而是将系统内存的数据独到内部缓存后再进行操作,但操作完后不知什么时候会写到内存。如果对声明了volatile变量进行写...转载 2019-06-10 11:07:20 · 107 阅读 · 0 评论 -
多线程补充(一)JVM内存结构 VS Java内存模型 VS Java对象模型
一:Java内存结构参考:https://www.zhihu.com/question/64586462/answer/576543433内存结构:JVM内存结构,由Java虚拟机规范定义。描述的是Java程序执行过程中,由JVM管理的不同数据区域。各个区域有其特定的功能。二:Java内存模型Java Memory Model(JMM)参考:JSR-133: Jav...转载 2019-06-10 10:09:25 · 121 阅读 · 0 评论 -
什么是业务逻辑
参考:https://blog.csdn.net/HorkyChen/article/details/45050969http://www.voidcn.com/article/p-wifdkunz-nt.html我来定义一下,业务逻辑就软件来讲就是软件所实现的功能,ui可以变,价格可以变,只要功能不变,业务逻辑就不变--------------------------------...原创 2019-06-14 18:20:44 · 5544 阅读 · 0 评论 -
Java多线程系列(十一)Java使用多线程实现生产者,消费者(wait,notify)
首先:引用wiki百科的定义链接:https://zh.wikipedia.org/wiki/%E7%94%9F%E4%BA%A7%E8%80%85%E6%B6%88%E8%B4%B9%E8%80%85%E9%97%AE%E9%A2%98#Java_%E4%B8%AD%E7%9A%84%E4%BE%8B%E5%AD%90生产者消费者问题(英语:Producer-consumer pro...原创 2019-05-11 19:27:08 · 530 阅读 · 0 评论 -
Java多线程系列(一)yield
yield方法是Thread类的静态方法,也是一个native方法。调用方式:Thread.yield();java源码中对这个方法的注释是: A hint to the scheduler that the current thread is willing to yield* its current use of a processor. The scheduler is fr...原创 2019-05-09 15:09:01 · 102 阅读 · 0 评论 -
很想采访一下前面那哥们,当时是基于什么样的思考写下这段代码
private void updateItemDownloadStatus(DownLoadInfo obj) { int type = (obj).getSubjectInfo().getVodType(); if (type == 1 && downStatusInfo.getSubjectInfo().getVodType() == 1) { ...原创 2018-11-08 11:50:39 · 191 阅读 · 0 评论 -
这写的是啥?
if (!isInPauseState) { isInPauseState = false;}。。。。。。太烂了原创 2018-11-01 16:58:32 · 168 阅读 · 0 评论 -
com.chanven.lib:cptr 导致的内存泄露
最新在项目中出现内存泄露的问题,找半天无法定位问题无奈只能采用二分法逐个排除,最后定位到com.chanven.lib:cptr 这个库https://github.com/Chanven/CommonPullToRefreshPtrFrameLayout 这个类557行代码如下:int delay = (int)((long)this.mLoadingMinTime - (...原创 2018-10-31 17:07:44 · 641 阅读 · 0 评论 -
关于数据不同步 Inconsistency detected vs The content of the adapter has changed but ListView ......
关于数据不同步的问题ListView 1.报错: java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified fro...原创 2018-06-07 11:19:36 · 236 阅读 · 0 评论 -
Java 中 创建文件操作
Section1 创建文件if (Environment.MEDIA_MOUNTED.equals( Environment.getExternalStorageState())){ String path = Environment.getExternalStorageDirectory().getAbsolutePath(); path=path+F原创 2017-10-20 19:12:29 · 242 阅读 · 0 评论 -
Java 中 创建文件夹操作
Section1 mkdirif (Environment.MEDIA_MOUNTED.equals( Environment.getExternalStorageState())){ String path = Environment.getExternalStorageDirectory().getAbsolutePath(); path=path+F原创 2017-10-20 18:23:03 · 666 阅读 · 0 评论 -
设计模式系列(七)适配器模式与Android中的ListView
一:适配器模式概念建造者模式过完了,从今天开始过结构型模式在我们的应用程序中我们可能需要将两个不同接口的类来进行通信,在不修改这两个的前提下我们可能会需要某个中间件来完成这个衔接的过程。这个中间件就是适配器。所谓适配器模式就是将一个类的接口,转换成客户期望的另一个接口。它可以让原本两个不兼容的接口能够无缝完成对接。作为中间件的适配器将目标类和适配者解耦,增加了类的透明性和可复用性...原创 2019-06-10 18:45:52 · 237 阅读 · 0 评论