开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 474|回复: 6
收起左侧

[完成] 多线程遇到的问题,多线程访问共享资源时的安全性(多...

 关闭 [复制链接]
结帖率:76% (16/21)
发表于 2024-6-24 19:44:09 | 显示全部楼层 |阅读模式   山西省忻州市
20精币
多线程遇到的问题,多线程访问共享资源时的安全性(多个线程访问同一个超级列表框中的数据)
这个程序逻辑是:在启动每个线程时,查找超级列表框状态为空的行(索引),启动线程的时候传入索引并把状态改为正在执行...,现在遇到的问题就是,我不结束这个线程,想要这个线程继续执行下个账号,但是当查找超级列表框状态为空的行的时候,通常都是好几个线程都拿到了这一行,这是因为第一个线程判断这行状态为空的时候,第二个线程也再判断,这就导致了多个线程都拿到了同一行内容,如果多个线程想要访问同一个超级列表框中的数据时.怎么才能保证安全性,不让多个线程拿到同一个索引,再Java中是加锁,但易语言中我没有找到锁相关的,希望各位大佬能指点一下
fb24a1789e791c56736fd3312bc99fe.png

界面大概就是这样,我启动每个线程的时候判断状态为空的,第一次拿到的不是同一行,但从第二次执行开始就乱了


最佳答案

查看完整内容

A=创建进入许可区() 进入许可区(A) 查找表 退出许可区(A) 补充内容 (2024-6-24 20:41): A=创建进入许可证()
结帖率:100% (7/7)

签到天数: 20 天

发表于 2024-6-24 19:44:10 | 显示全部楼层   江西省赣州市
A=创建进入许可区()

进入许可区(A)
查找表
退出许可区(A)


补充内容 (2024-6-24 20:41):
A=创建进入许可证()

评分

参与人数 1荣誉 +1 收起 理由
笨潴 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:100% (5/5)

签到天数: 3 天

发表于 2024-6-24 19:49:32 | 显示全部楼层   广东省佛山市
加许可证,或者读写锁,就是你说的锁
回复

使用道具 举报

结帖率:98% (98/100)

签到天数: 18 天

发表于 2024-6-24 19:51:34 | 显示全部楼层   河南省郑州市
为什么启动线程要去查找列表框里面为空的?
你直接计次循环列表框所有的项,判断为空的话 启动一个线程.然后继续下一个判断不就行了?
回复

使用道具 举报

结帖率:76% (16/21)
 楼主| 发表于 2024-6-24 20:24:59 | 显示全部楼层   山西省忻州市
小明无敌 发表于 2024-6-24 19:51
为什么启动线程要去查找列表框里面为空的?
你直接计次循环列表框所有的项,判断为空的话 启动一个线程.然后 ...

不是查找,是从超级列表框取数据
回复

使用道具 举报

结帖率:76% (16/21)
 楼主| 发表于 2024-6-24 20:31:59 | 显示全部楼层   山西省忻州市
7ian 发表于 2024-6-24 19:49
加许可证,或者读写锁,就是你说的锁

只要给获取索引的时候加锁就行,我明白,但是有代码么,我不知道易语言的锁怎么加,大佬能指点一下么,万分感谢
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 13 天

发表于 2024-6-24 20:57:42 | 显示全部楼层   福建省泉州市
北有诗易 发表于 2024-6-24 20:31
只要给获取索引的时候加锁就行,我明白,但是有代码么,我不知道易语言的锁怎么加,大佬能指点一下么,万 ...

6楼正解   创建进入许可证()
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表