【发布时间】:2018-09-18 09:11:33
【问题描述】:
因为netty对SCTP和TCP使用不同的通道初始化,所以我想检查一下平台是否支持SCTP,如果支持,使用SCTP,否则使用TCP。但是,我在 JDK8 或 netty4 中都找不到任何方法来检查这一点。
【问题讨论】:
因为netty对SCTP和TCP使用不同的通道初始化,所以我想检查一下平台是否支持SCTP,如果支持,使用SCTP,否则使用TCP。但是,我在 JDK8 或 netty4 中都找不到任何方法来检查这一点。
【问题讨论】:
如果 sctp 可用,应该可以毫无例外地调用 com.sun.nio.sctp.SctpServerChannel,但我无法确认,因为我在所有设备上都支持 sctp。
为确保您拥有正确配置的机器和 JDK,请尝试编译并运行以下应用程序:
public class TestSCTP
{
public static void main(String[] args) throws Exception {
com.sun.nio.sctp.SctpChannel sc = com.sun.nio.sctp.SctpChannel.open();
}
}
$ jdk1.7.0/bin/javac TestSCTP.java
$ jdk1.7.0/bin/java TestSCTP
如果它编译和运行没有任何错误,那么恭喜你有一个正确配置的机器和 JDK。您现在可以开始编写使用 SCTP API 的应用程序了。
【讨论】: