社区
Java EE
帖子详情
一个循环队列有增加和读方法,被static,同一时间有N个线程在增加队列中数据,还有N个线程在读队列中数据,导致线程安全问题,怎么解决呢
xlyyc
2005-05-21 12:31:02
如题,增加和读取方法都加上了synchronized关键字
谢谢,欢迎讨论
...全文
155
5
打赏
收藏
一个循环队列有增加和读方法,被static,同一时间有N个线程在增加队列中数据,还有N个线程在读队列中数据,导致线程安全问题,怎么解决呢
如题,增加和读取方法都加上了synchronized关键字 谢谢,欢迎讨论
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhang21cnboy
2005-05-23
打赏
举报
回复
没看你的代码,不知道问题所在
Preamble
2005-05-23
打赏
举报
回复
本质上是个生产者与消费者的问题。(有类似的书籍,操作系统里面好像提出过这个)
1。提高写的优先级,降低读的优先级 ,试试看
2。若1不行,将 写 缓存起来。
querlang
2005-05-23
打赏
举报
回复
增加和读取方法都加上了synchronized关键字
楼主不是都说出来了吗?
xlyyc
2005-05-23
打赏
举报
回复
晕哦,到现在没有人来啊
xlyyc
2005-05-21
打赏
举报
回复
所谓线程安全问题,这里指无法正确读循环队列中的数据,因为,队头和队尾以及数据一直在改变。
但是增加方法是实时的,如果与读方法互斥的话,就有可能在读的时候不能增加,造成数据丢失。真是晕哦。
数据
结构基础系列(3):栈和
队列
系列课程包含11个部分,本课为第3部分栈和
队列
,介绍在系统软件和应用软件开发
中
大有用途的两种特殊线性表——栈和
队列
的构组成、存储结构的选择,以及基本运算的实现,通过相关的应用案例介绍了这些
数据
结构的应用...
Java实现多
线程
写
数据
到文件【
队列
-文件】
大致流程先将要写入文件的
数据
写入到
一个
队列
中
,然后单开
一个
线程
专门
读
取
队列
数据
写入文件,可以保证写入到文件的
数据
的顺序,生产者类即多
线程
写入文件模拟package com.ldl.test.domain; import java.text....
c语言
线程
任务
队列
,进程、
线程
、任务、
队列
进程是指在系统
中
正在运行的
一个
应用程序,就是一段程序的执行过程,我们可以理解为手机上的
一个
app.3.每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内,拥有独立运行所需的全部资源二、
线程
1....
线程
安全
的无锁RingBuffer的实现【
一个
读
线程
,
一个
写
线程
】
在程序设计
中
,我们有时会遇到这样的情况,
一个
线程
将
数据
写到
一个
buffer
中
,另外
一个
线程
从
中
读
数据
。所以这里就有多
线程
竞争的
问题
。通常的
解决
办法是对竞争资源加锁。但是,一般加锁的损耗较高。其实,对于这样的...
详解高性能无锁
队列
的实现
无锁
队列
(Lock-Free Queue)是一种并发
数据
结构,它允许多个
线程
在没有锁的情况下进行并发操作。传统的
队列
通常通过互斥锁来实现
线程
安全
的操作,但互斥锁在高并发情况下可能会造成竞争和性能瓶颈。为了避免使用锁...
Java EE
67,512
社区成员
225,881
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章