社区
Java EE
帖子详情
很紧急,求助各位大佬,关于java多线程和socket问题
LikeInsane
2019-10-07 07:07:18
我现在要用socket和多线程实现一个多人玩的游戏。要求每个人可以看到所有人的计分表,如图
于是我在server端弄了个list叫allOut,想每次连接一个客户端就把他的输出流装进去。
然后遍历发给所有客户端。但是现在问题是。第一个客户端连上后,allOut长度为1。所以遍历时候也只是输出了自己的对象。只有到最后一个客户端allOut这个list才把所有的输出流装进去了。所以如何让所有线程可以共享这个allOut List?或者有什么更好的方法可以实现这个需求呢?真的很紧急,拜托各位大佬了
...全文
172
5
打赏
收藏
很紧急,求助各位大佬,关于java多线程和socket问题
我现在要用socket和多线程实现一个多人玩的游戏。要求每个人可以看到所有人的计分表,如图 于是我在server端弄了个list叫allOut,想每次连接一个客户端就把他的输出流装进去。 然后遍历发给所有客户端。但是现在问题是。第一个客户端连上后,allOut长度为1。所以遍历时候也只是输出了自己的对象。只有到最后一个客户端allOut这个list才把所有的输出流装进去了。所以如何让所有线程可以共享这个allOut List?或者有什么更好的方法可以实现这个需求呢?真的很紧急,拜托各位大佬了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qybao
2019-10-08
打赏
举报
回复
我觉得应该有个游戏用户列表来管理socke和UI
当游戏有戏用户加入时(新用户的socke和UI加入游戏用户列表),触发某个回调
回调方法就是遍历游戏用户表,把UI信息通过socket发给各个游戏用户
ninuxGithub
2019-10-08
打赏
举报
回复
理解一下楼主的大概的意思就是 随着用户陆续的登录,就会有玩家的数量增加, 每个玩家都有类来封装了游戏中的参数, 这些数据是动态的, 需要实时的推送给页面前段; 这其实一个实时推送的问题; 我们之前有过项目经验, 提示你可以采用websocket + mina 建立tcp长连接的方式, 对session进行维护起来, 然后我们需要例如每隔1s就采用我们维护的session来push一次数据(玩家的得分数据); websocket 和 mina 之前通信需要通过一个filter 可以参考github开源项目:https://github.com/coopci/mina-websocket-filter.git
瘦死的黑骆驼
2019-10-08
打赏
举报
回复
没明白你说的“只有到最后一个客户端allOut这个list才把所有的输出流装进去了”,你不是多线程吗,每次连接一个客户端直接加到集合就是了,你的集合最好这样定义 public static volatile List<Socket> clientSockets = new ArrayList<Socket>();
小包包007
2019-10-07
打赏
举报
回复
如何让线程共享list集合?使用单例模式下构建个线程安全的list就好了
oh_Maxy
2019-10-07
打赏
举报
回复
要看你做的 是端游还是页游了。
端游,可以考虑用NIO技术,可以考虑Netty框架。
页游的话,可以关注下webSocket。
webmagic采集CSDN的
Java
_WebDevelop页面
, jquery Json解析, 求json大神帮我看看这个格式的json如何解析,
求助
:jsp+easyUI保存多个同类型model, 关于PWC6033: Unable to compile class for JSP
问题
的
求助
, 关于在同一个页面。点击查询按钮,下面会出现表格...
图形引擎实战:Native RenderPass原理及URP
熟悉什么语言,问
Java
八股,进程之间通信方式,共享内存,
socket
通信过程,线程池,派生,反射,静态变量和全局变量的区别3. HR面,在。爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,爽,...
题解 | #某宝店铺连续2天及以上购物的用户及其对应的天数#
然后一些
多线程
的八股,最后手撕,说给20分钟,10分钟就a了,然后反问环节数字时代的自我呈现:探索个人形象打造的创新工具 数字时代的自我呈现:探索个人形象打造的创新工具——FaceChain深度学习模型工具1.介绍...
10.16 杭州银行笔试面经 - 编程题 &; 题解
如题,目前只有这几个选择,主要是在华为和初创之间纠结,初创是做risc-v架构的,华子投的软开,友友们能给点意见吗[牛泪] {nowcoder-vote}{89。投递岗位:(美团)安卓客户端开发投递时间:美团似乎开的时间比较早...
timed_waiting线程是否占用cpu_程序CPU占用率飙升,如何定位线程的堆栈信息?超详细,值得收藏看不懂还有配套视频 第319篇...
相关历史文章(阅读本文前,您可能需要先看下之前的系列?)国内最全的SpringBoot系列之三2020上半年发文汇总「值得收藏」GraphQL的探索之路–SpringBoot集成GraphQL小栗子篇二-第315篇GraphQL的探索之路–SpringBoot...
Java EE
67,549
社区成员
225,860
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章