package com.block.stu3.entity;
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.BlockingQueue;
public class UserEntity {
String userName;
private BlockingQueue<MessageEntity> msgQueue = new LinkedBlockingDeque<MessageEntity>();
public UserEntity() {
}
public UserEntity(String userName) {
this.userName = userName;
}
public void put(MessageEntity msg) {
try {
msgQueue.put(msg);
System.out.println(Thread.currentThread().getName() + "向用户:"
+ userName + ",[" + msgQueue.hashCode() + "]" + "成功发送消息 :"
+ msg.getMsgInfo());
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public MessageEntity takeMsg() {
MessageEntity msg = null;
try {
System.out.println(">>>>" + userName
+ ",[" + msgQueue.hashCode() + "]" + " 准备从自己的队列中取消息......");
msg = msgQueue.take();
System.out.println(">>>>>>>>" + userName
+ ",["+ msgQueue.hashCode() + "]" + " 成功取出发给自己的消息: "
+ msg.getMsgInfo());
} catch (InterruptedException e) {
e.printStackTrace();
}
return msg;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
java线程聊天室(阻塞队列实现)
共58个文件
java:19个
class:19个
jar:4个
5星 · 超过95%的资源 需积分: 10 48 下载量 50 浏览量
2015-03-26
14:21:31
上传
评论 2
收藏 1.09MB RAR 举报
温馨提示
运行,登录时,请用两个浏览器登录,应为有不同session,这是跟据session来判断用户的
资源推荐
资源详情
资源评论
收起资源包目录
stu_blockQueue.rar (58个子文件)
stu_blockQueue
.project 1KB
WebContent
WEB-INF
lib
sqljdbc4R2.jar 525KB
jstl.jar 20KB
standard.jar 384KB
gson-2.2.2.jar 185KB
step2
msg.jsp 2KB
msg.js 2KB
login.jsp 555B
Copy of msg.jsp 2KB
js
jquery-1.8.3.js 261KB
META-INF
MANIFEST.MF 39B
step1
sender.html 1KB
taker.html 861B
src
com
filter
EncodingFilter.java 1KB
listener
AddOnlineUserListener.java 1KB
RemoveOnlineUserListener.java 787B
InitBlockQueueListener.java 1KB
block
stu3
entity
MessageEntity.java 334B
UserEntity.java 1KB
control
UserLoginServlet.java 1KB
MessagePutServlet.java 1KB
UserLogoutServlet.java 638B
MessageTakeServlet.java 1KB
stu1
Girl.java 235B
Box.java 845B
Test2_take.java 243B
Test2Context.java 96B
Test1.java 271B
Boy.java 480B
Test2_put.java 143B
stu2
MsgPutServlet.java 1KB
MsgTakeServlet.java 1KB
.settings
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.common.project.facet.core.xml 345B
org.eclipse.jdt.core.prefs 364B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.wst.common.component 496B
.jsdtscope 503B
build
classes
com
filter
EncodingFilter.class 2KB
listener
AddOnlineUserListener.class 2KB
RemoveOnlineUserListener.class 2KB
InitBlockQueueListener.class 2KB
block
stu3
entity
UserEntity.class 2KB
MessageEntity.class 655B
control
MessageTakeServlet.class 2KB
MessagePutServlet.class 2KB
UserLoginServlet.class 2KB
UserLogoutServlet.class 1KB
stu1
Boy.class 1KB
Test2_take.class 553B
Box.class 2KB
Girl.class 655B
Test1.class 744B
Test2Context.class 435B
Test2_put.class 562B
stu2
MsgPutServlet.class 2KB
MsgTakeServlet.class 2KB
.classpath 841B
共 58 条
- 1
资源评论
- 呆梓2015-03-28很好,很多东西都可以学习一下
仰望天空的黑马
- 粉丝: 1
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于去中心化联邦学习的货运速度预测时空模型-A decentralized federated learning-based s
- 适合新手的 OpenAI Sora 详细使用教程
- 驱动总裁离线安装包01
- NT98336 SDK 114版本
- torch-1.8.1+cu111-cp38-cp38-linux-x86-64.whl +torchvision
- 智能提取字幕-intel
- 计算机设计 - VB+ACCESS网络计时管理系统设计(源代码+系统),保证可靠运行,毕业生可参考,免费资源下载
- 信号处理,通信原理,数字通信信号处理与系统分析
- 计算机设计 - vb+ACCESS身份证管理系统设计(LW+源代码),保证可靠运行,毕业生可参考,免费资源下载
- 智能提取字幕-win10
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功