首页
AI Coding
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
面试
订阅
凡尘多遗梦
更多收藏集
微信扫码分享
微信
新浪微博
QQ
194篇文章 · 0订阅
把Redis当作队列来用,真的合适吗?
我经常听到很多人讨论,关于「把 Redis 当作队列来用是否合适」的问题。 有些人表示赞成,有人表示反对,究竟谁说的对呢?
并发编程的挑战
在学习并发编程首先需要明确一个问题就是:并发编程是让程序处理问题更快,让程序更大限度的并行执行,而不是开辟很多线程去执行任务。当然让并发编程作为使程序解决问题更加迅速的处理方案以及程序性能判断的时候,我们不得不考虑一下几点问题: 首先为什么需要考虑线程上下文切换?以及什么是上下…
JVM垃圾回收算法和垃圾回收器
JVM 垃圾回收算法和垃圾回收器。 一、垃圾回收的区域 栈:栈中的生命周期是跟随线程,所以一般不需要关注。 堆:堆中的对象是垃圾回收的重点。 方法区:这一块也会发生垃圾回收,不过这块的效率比较低,一般
【并发编程系列3】volatile内存屏障及实现原理分析(JMM和MESI)
初识volatileJava语言规范第3版中对volatile的定义如下:Java编程语言允许线程访问共享变量,为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。这个概念听
反制面试官 | 14张原理图 | 再也不怕被问 volatile!
这一篇也算是Java并发编程的开篇,看了很多资料,但是轮到自己去整理去总结的时候,发现还是要多看几遍资料才能完全理解。还有一个很重要的点就是,画图是加深印象和检验自己是否理解的一个非常好的方法。 这是一份精心总结的Java内存模型思维导图,拿去不谢。 JMM是Java内存模型,…
关于MQ的几件小事(四)如何保证消息不丢失
数据不能多,也不能少,不能多是说消息不能重复消费,这个我们上一节已解决;不能少,就是说不能丢失数据。如果mq传递的是非常核心的消息,支撑核心的业务,那么这种场景是一定不能丢失数据的。 丢数据一般分为两种,一种是mq把消息丢了,一种就是消费时将消息丢了。下面从rabbitmq和k…
一道搜狗面试题:IO多路复用中select、poll、epoll之间的区别
它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。 poll本质上和sele…
基础篇:详解JAVA对象实例化过程
类的加载机制:如果没有相应类的class,则加载class到方法区。对应着加载->验证->准备->解析-->初始化阶段 准备:为类变量分配内存并设置变量的初始值(默认值)。如果是final修饰的对象则是赋值声明值 初始化:执行类构造器<client>(注意不是对象构造…
Java程序员面试必备:Volatile全方位解析
volatile关键字是Java虚拟机提供的的最轻量级的同步机制,它作为一个修饰符出现,用来修饰变量,但是这里不包括局部变量哦。我们来看个demo吧,代码如下: 可以发现线程t2,虽然把stop设置为true了,但是线程t1对t2的stop变量视而不可见,因此,它一直在死循环r…