Я учусь использовать функцию epoll. Но в моей OS X, Mountain Lion нет заголовочного файла sys/epoll.h.
Я хочу использовать функцию epoll в OS X. Как я могу использовать функцию epoll?
Я учусь использовать функцию epoll. Но в моей OS X, Mountain Lion нет заголовочного файла sys/epoll.h.
Я хочу использовать функцию epoll в OS X. Как я могу использовать функцию epoll?
Mac OS X не поддерживает epoll, но поддерживает kqueue очень похоже.
в Mac OSX используйте kqueue вместо epoll. Сделайте что-то подобное в своем java-коде.
final boolean isMac =
System.getProperty("os.name").toLowerCase(Locale.US).contains("mac");
// Configure the server.
// See https://netty.io/wiki/native-transports.html
EventLoopGroup bossGroup;
EventLoopGroup workerGroup;
if (isMac) {
bossGroup = new io.netty.channel.kqueue.KQueueEventLoopGroup();
workerGroup = new io.netty.channel.kqueue.KQueueEventLoopGroup(5);
} else {
bossGroup = new io.netty.channel.epoll.EpollEventLoopGroup();
workerGroup = new io.netty.channel.epoll.EpollEventLoopGroup(5);
}
Убедитесь, что вы добавили io.netty в pom.xml.