Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Kwan的解忧杂货铺@新空间代码工作室
netty-demo
提交
07007321
N
netty-demo
项目概览
Kwan的解忧杂货铺@新空间代码工作室
/
netty-demo
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
N
netty-demo
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
07007321
编写于
5月 04, 2023
作者:
Kwan的解忧杂货铺@新空间代码工作室
🐭
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix:聊天项目
上级
105091b1
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
3 addition
and
20 deletion
+3
-20
netty-04-chat/src/main/java/com/kwan/shuyu/protocol/MySerializer.java
...t/src/main/java/com/kwan/shuyu/protocol/MySerializer.java
+3
-1
netty-04-chat/src/main/java/com/kwan/shuyu/test/TestConnectionTimeout.java
.../main/java/com/kwan/shuyu/test/TestConnectionTimeout.java
+0
-19
未找到文件。
netty-04-chat/src/main/java/com/kwan/shuyu/protocol/MySerializer.java
浏览文件 @
07007321
...
...
@@ -85,7 +85,9 @@ public interface MySerializer {
}
}
// 针对之前报出:不支持 Class类转json的异常 做处理
/**
* 针对之前报出:不支持 Class类转json的异常 做处理
*/
class
ClassCodec
implements
JsonSerializer
<
Class
<?>>,
JsonDeserializer
<
Class
<?>>
{
@Override
public
Class
<?>
deserialize
(
JsonElement
json
,
Type
type
,
JsonDeserializationContext
jsonDeserializationContext
)
throws
JsonParseException
{
...
...
netty-04-chat/src/main/java/com/kwan/shuyu/test/TestConnectionTimeout.java
浏览文件 @
07007321
...
...
@@ -24,25 +24,6 @@ public class TestConnectionTimeout {
try
{
final
Bootstrap
bs
=
new
Bootstrap
()
.
group
(
group
)
// 300毫秒超时限制 (注意:最多限制2秒,否则报更底层的java.net.ConnectException: Connection refused: no further information)
/*
debug 发现,这里是创建了 定时任务,一秒后触发,如果连接成功则取消 使用promise做主次线程之间通信
int connectTimeoutMillis = config().getConnectTimeoutMillis();
if (connectTimeoutMillis > 0) {
connectTimeoutFuture = eventLoop().schedule(new Runnable() {
@Override
public void run() {
ChannelPromise connectPromise = AbstractNioChannel.this.connectPromise;
ConnectTimeoutException cause =
new ConnectTimeoutException("connection timed out: " + remoteAddress);
if (connectPromise != null && connectPromise.tryFailure(cause)) {
close(voidPromise());
}
}
}, connectTimeoutMillis, TimeUnit.MILLISECONDS);
}
如果超时 只执行到 future.sync() 然后 抛异常
*/
.
option
(
ChannelOption
.
CONNECT_TIMEOUT_MILLIS
,
1000
)
.
channel
(
NioSocketChannel
.
class
)
.
handler
(
new
LoggingHandler
());
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录