随笔分类 -  多线程

摘要:有几家饭店,顾客源源不断下单,生意很好,一开始随机雇佣送外卖的小哥来取包裹派送(创建线程),发现太麻烦,打电话给小哥浪费时间(线程开销大,销毁切换)。 1、newFixedThreadPool【定长线程池,可控制最多并发数】 A饭店高级饭店, 用户都是高端人士,路途遥远,要求的配送人员素质高, 1. 阅读全文
posted @ 2018-08-02 10:37 猪哥哥厉害 阅读(258) 评论(0) 推荐(0)
摘要:1.1需求 数据库300 万条用户数据 ,遍历获取所有用户, 各种组合关联, 获取到一个新的json ,存到redis 上。 1.2 难点 数据库比较多, 不可能单线程查询所有的数据到内存。 1.3解决办法 多线程读取, 生产者 每次获取200 条数据, 消费者去消费。(这里 主要是根据MySQL分 阅读全文
posted @ 2017-03-22 20:20 猪哥哥厉害 阅读(8493) 评论(1) 推荐(0)
摘要:并发都用到, 两个都是解决了线程并发问题,区别呢? Synchronized 同步机制, 共有变量被多个线程使用,会出现线程不安全,所以,加锁,锁机制很多种,例如Synchronized, lock 锁, 阻塞队列。以时间换空间, 某一个线程拿到锁, 先进去, 其他线程, 等着吧~ ThreadLo 阅读全文
posted @ 2016-11-16 16:16 猪哥哥厉害 阅读(2320) 评论(0) 推荐(0)
摘要:需求:一个业务实现 查询, 因为 要查询十几次, 所以每个平均0.6秒, 之前只有主线程一步步查 ,结果用了10秒,效率十分低下 , 于是改用线程池并发: 以下是代码设计: 1.线程池工具类: 2.callableUtil 类 3.枚举类: 4.主线程: 测试: 1.8 秒还是可以接受的 阅读全文
posted @ 2016-07-25 16:12 猪哥哥厉害
摘要:项目中要用 到多线程,需求: 论坛发帖,如果是我们的老师用户发帖,会向所有用户发一条信息,提醒用户去看贴。代码这么实现,老师保存文章后,新写一个线程,获取所有的用户,循环插入信息 具体代码: 通过构造把 动态参数传进来,插入到数据库中,就是这么简单。 如何调用: 阅读全文
posted @ 2015-08-06 15:55 猪哥哥厉害 阅读(482) 评论(0) 推荐(0)
摘要:同步:共享资源被多个线程 调用,同步的方式有多种:(场景:卖火车票) 1 syncnizerd 关键字 2 reentrantLock 排它锁 3 volatile 关键字 修饰变量;异步:改变线程本身的状态 ,异步方法有多种:(场景:生产者消费者模式) 1 wait notify ,Object ... 阅读全文
posted @ 2015-05-27 17:48 猪哥哥厉害 阅读(693) 评论(0) 推荐(0)
摘要:1.如何实现线程安全。 1)volatile 关键字,线程安全,三个原则,原子性,可见性,有序性,保证公用数据不被多个线程使用造成问题,将java内存模型,提出,jvm在分配内存的时候,系统分配一个主内存,各个线程有个独立的工作内存,公用的数据存在主内存,如果一个线程调用,后改变了,没有刷新,另一个 阅读全文
posted @ 2015-01-07 12:22 猪哥哥厉害 阅读(124) 评论(0) 推荐(0)
摘要:1、同步容器:他们的所有的方法都是同步的,且是有Collections.synchronziedXXX 方法创建的 1)vector 2)hashtable 2、并发容器:jdk5 引进了concuurrentHashmap,Queue ,blokingQueue,来实现并发同步,jdk提供了传统的 阅读全文
posted @ 2015-01-07 11:50 猪哥哥厉害 阅读(215) 评论(0) 推荐(0)