
java
文章平均质量分 86
rocky-bull
这个作者很懒,什么都没留下…
展开
-
JAVA中的Singleton模式
单例模式,顾名思义,只能有一个实例。一.从多线程安全说起,如下图代码,此问题可以用synchronized关键字来解决。该方法缺点:每一个线程在获取实例对象之前都要在synchronized上同步的对象上进行等待,因此效率不高。 package singleton;public class SingletonClass { private static Single原创 2009-11-22 18:06:00 · 1681 阅读 · 3 评论 -
十六进制字符串 char数组 转换 c c++ java
欢迎指正不足 1.c版 int hexcharToInt(char c){ if (c >= '0' && c <= '9') return (c - '0'); if (c >= 'A' && c <= 'F') return (c - 'A' + 10); if (c >= 'a' && c <= 'f') retur原创 2012-03-23 02:02:22 · 2550 阅读 · 0 评论 -
java 线程池
一 什么是线程池顾名思义,一个池子里面用来存放一定数量的线程资源。类似的概念还有socket连接池(okhttp)、数据库连接池。池子里面包含了几个概念,1.一个容器用来存放指定数量的资源;2.池子里面的资源可以复用。二 为什么用线程池多线程可以提升多核cpu的利用率。线程少,cpu时间片切换,线程上下文切换开销比较大;线程太多会增加内存开销,并且线程创建、销毁的代价也比较高。权衡cpu利用率提升与原创 2017-10-17 15:04:45 · 250 阅读 · 0 评论 -
hashmap 线程安全问题分析
1.问题引入开发过程使用了HashMap全局变量作为缓存HashMap<String, String> mCacheMap写(put)mCacheMap是线程R读(get)mCacheMap是线程WHashmap是非线程安全的集合类,在此场景中RW分属于两个不同线程,会存在读写数据不一致性问题。比如W线程正在更新HashMap过程中,R线程同时读取HashMap,由...原创 2018-06-23 23:48:44 · 5980 阅读 · 0 评论 -
java生产者消费者模型,需要考虑多线程安全
方法一:使用synchronized做同步`package ProducerConsumer;import java.util.LinkedList;import java.util.Queue;public class ProducerConsumerSynchronized {private final int MAX_LEN = 100;private Queue queue ...原创 2018-11-02 14:35:52 · 483 阅读 · 0 评论