java
文章平均质量分 62
ningshuaichen
这个作者很懒,什么都没留下…
展开
-
Netty 的线程模型
要想开发一个高性能的TCP服务器,熟悉所使用框架的线程模型非常重要。Netty本身都是高性能的网络框架,如果再搭配上高效率的代码,才能实现一个高大上的服务器。但是如果不了解它们的线程模型,就很难写出高性能的代码。框架本身效率再高,程序写的太差,那么服务器整体的性能也不会太高。就像一个电脑,CPU再好,内存小硬盘慢散热差,整体的性能也不会太高。玩过Android开发的同学会知道,在Android应用中有一个非常重要线程:UI线程(即主线程)。UI线程是负责一个Android的界面显示以及和用户交互。Act原创 2021-02-18 11:20:59 · 185 阅读 · 0 评论 -
Java中如何唤醒“指定的“线程
熟悉线程操作的小伙伴应该知道,Java中线程的挂起和唤醒一般用synchronized + wait + notify完成。比如:synchronized(o) { o.wait(); //wait状态}在其他线程中o.notify(),就可以唤醒在o上wait的线程。可是如果o上有多个线程wait,是没有办法唤醒“指定”的某个线程的。不过,Java6之后,转机来了,Java6引入了LockSupport这个类,好了,废话不多说,我们直接上代码:public class Test原创 2021-02-16 22:41:15 · 2620 阅读 · 0 评论 -
利用 Redis 实现代码零侵入、高性能和安全的分布锁
针对高并发程序的设计而言,分布式锁是不可或缺的功能,特别是用户大量的操作、流量涌进来以后,看似运行稳定的程序却因为没有分布锁而导致物品超卖或一人多个订单的情况发生,而有的同学在系统中可能也使用了分布锁,但是每隔一段时间就会导致死锁或者出现根本拦不住的情况,视分布式锁如无物,关键是问题还偶然性的发生,花了大量的时间看日志、测试,但都一无所获,本场 Chat 将解密分布锁以上发生问题的原因和解决办法,...原创 2020-03-09 13:54:22 · 143 阅读 · 0 评论 -
设计模式思维拓展与实战:策略模式
“我明明学了那么多的设计模式,怎么转头就忘?”;“设计模式那么多,我该用哪一种?”;“设计模式太难了,我还是继续堆积我的代码吧,虽然扩展起来比较麻烦,复制、粘贴嘛”。如果您有类似的困惑,那么这篇文章将很适合您阅读,学会了概念不代表真正的掌握了它,只有实战才能真正的加深我们对设计模式的理解,从而让我们的程序更加的健壮、优美和富有生命力,远离复制、粘贴吧,因为您是一位优秀的软件开发人员,本场 Chat...原创 2020-03-08 22:54:10 · 143 阅读 · 0 评论 -
java并发信号量Semaphore
package com.blocking;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Semaphore;public class ArrayCopy {public static原创 2017-11-10 15:18:59 · 176 阅读 · 0 评论 -
redisson分布式锁的实现
最近由于工作很忙,很长时间没有更新博客了,今天为大家带来一篇有关Redisson实现分布式锁的文章,好了,不多说了,直接进入主题。1. 可重入锁(Reentrant Lock)Redisson的分布式可重入锁RLock Java对象实现了java.util.concurrent.locks.Lock接口,同时还支持自动过期解锁。[java] view转载 2017-11-13 18:25:12 · 866 阅读 · 0 评论