写在前面 InterruptedException异常可能没你想的那么简单! 前言 当我们在调用Java对象的wait()方法或者线程的sleep()方法时,需要捕获并处理Interr ...
背景 近期公司项目中加了一个积分机制,用户登录签到会获取登录积分,但会出现一种现象就是用户登录时会增加双倍积分,然后生成两个积分记录。此为问题 问题分析 项目采用微服务架构,下图为积分机制流程 worker通过分析日志记录从而判断用户当天积分是否增加,进而进行积分增加增添记录或者无操作。 两个worker对积分数据库进行同时写入,造成积分双倍增加的情况,那问题找到了,就是对数据库并发写入的问题。 ...
2018-11-29 18:45 0 1819 推荐指数:
写在前面 InterruptedException异常可能没你想的那么简单! 前言 当我们在调用Java对象的wait()方法或者线程的sleep()方法时,需要捕获并处理Interr ...
一次聊天,谈到了死锁的解决、可重入锁等等,突然发现这些离自己很远,只有一些读书时的概念涌入脑海,但各自的应用场景怎么都无法想出。痛定思痛,决定看看concurrent包里涉及并发的类及各自的应用场景。 第一类:原子操作类的atomic包,里面包含了 1)布尔类型的AtomicBoolean ...
1. - (void)didMoveToSuperview 通知视图已经移动到一个新的父视图中 2. /**系统自动调用(留给子类去实现)**/ - (void)didAddSubvie ...
这几天我翻了翻golang的提交记录,发现了一条很有意思的提交:bc593ea,这个提交看似简单,但是引人深思。 commit讲了什么 commit的标题是“sync: document impl ...
当你写下这样的代码时你将会得到一大堆的编译错误, 其中比较有用的在第一行: error C2679: binary '<<' : no operator ...
本文仅代表我的个人观点,欢迎各位批评与指正。 如果有人说上帝是全能的,似乎会被别人笑死。为啥呢,因为似乎“上帝没法创造一个他自己都搬不动的石头”。这问题在哲学上引起过广泛的思考。但是如果是一个程序员,似乎完全不会纠结这个问题。上帝必需是全能 ...
由一个emoji引发的思考 从毕业以来,基本就一直在做移动端,但是一直就关于移动端的开发,各种适配问题的解决,在日常搬砖中处理了就过了,也没有把东西都沉淀下来,觉得甚是寒颜。现就一个小bug,让我们来了解一下我们天天都在用的emoji,对于开发来说,是一个怎么样的存在。 背景 之前 ...