zoukankan
html css js c++ java
高并发可以不加锁吗
最近遇到别人问的一个问题,如下:
高并发下修改商品库存,加锁会导致性能问题,怎样实现在不加锁的情况下实现高性能修改库存?
我的答案:
1、一般对于并发处理都需要加锁,否则会导致共享变量不可见问题,尽量将锁的力度变小
2、如果确认不能或不想加锁,则做串行化处理,我给的解决方案是消息队列
3、
http://www.zhihu.com/question/36560619
这
里有说
单生产者和单消费者 的队列是可以做到真正无锁,看不懂
4、
http://zhidao.baidu.com/link?url=qDk1lJax-3v08Bng7Ignf8Zk4gVwUAr0118lzm3lRqTiaBpbe5j5x6f9V8yBpoq5zulHudZb7X3pRs8X51Xxlz80VrgskxMaTjyGklUmZ2e
这篇文章也说了做串行化处理,消息队列的线程不做IO操作,而是单独开线程从消息队列取数据进行IO操作
结论:
问我问题的人说已经找到了不加锁,不用消息队列解决问题的方法,但是不告诉我。。。
来自为知笔记(Wiz)
查看全文
相关阅读:
分享自制的C#和VB Code互转工具
C# winform 学习(一)
C# winform 学习(二)
C# winform 学习(二)
C# Winform 学习(四)
C# Winform 学习(四)
C# winform 学习(三)
C# winform 学习(三)
C# Winform学习(六)
C# Winform学习(六)
原文地址:https://www.cnblogs.com/gossip/p/5788623.html
最新文章
C# Winform 学习(五)
C# Winform 学习(五)
(Java实现) 洛谷 P1691 有重复元素的排列问题
(Java实现) 洛谷 P1691 有重复元素的排列问题
C# winform 学习(一)
Qt中添加背景图片的方法
教你如何用Qt做透明的窗体,setMask, Opacity
关于兄弟QWidget间的位置重叠
Qt4.6.2已编译二进制版本在VS2005中的问题
使用Qt编写模块化插件式应用程序
热门文章
Unity3.0基于约定的自动注册机制
类图class的关联关系(聚合、组合)
dapper 扩展插件: Rainbow
Django ORM 查询管理器
分布式系统设计7
C#正则表达式大全
扩展Session机制
MVC Model Binder
(JavaScript插件——下拉菜单)
随机森林介绍
Copyright © 2011-2022 走看看