Go to file
Norman Maurer c6a3cae269 UnorderedThreadPoolEventExecutor consumes 100% CPU when idle
Motivation:

When UnorderedThreadPoolEventExecutor.execute / submit etc is called it will consume up to 100 % CPU even after the task was executed.

Modifications:

Add a special wrapper which we will be used in execute(...) to wrap the submitted Runnable. This is needed as  ScheduledThreadPoolExecutor.execute(...) will delegate to submit(...) which will then use decorateTask(...). The problem with this is that decorateTask(...) needs to ensure we only do our own decoration if we not call from execute(...) as otherwise we may end up creating an endless loop because DefaultPromise will call  EventExecutor.execute(...) when notify the listeners of the promise.

Result:

Fixes [#6507].
2017-03-09 11:12:42 +01:00
.github Use GitHub Issue/PR Template Feature 2016-12-07 11:40:26 -08:00
all Missing release modules in netty-all project 2017-02-20 13:44:36 +01:00
bom Add a 'bill of materials' project for Maven users 2017-03-01 10:50:57 +01:00
buffer Fix misordered 'assertEquals' arguments in tests 2017-03-08 22:48:37 -08:00
codec Update links from code.google.com to github.com 2017-03-07 10:21:03 +01:00
codec-dns Prefer JDK ThreadLocalRandom implementation over ours. 2017-02-16 15:44:00 -08:00
codec-haproxy [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
codec-http Fix misordered 'assertEquals' arguments in tests 2017-03-08 22:48:37 -08:00
codec-http2 Support SSL_ prefixed cipher suites in addition to TLS_ prefixed ones. 2017-03-09 09:26:33 +01:00
codec-memcache [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
codec-mqtt Convert fields to the local variable when possible 2017-03-08 17:09:17 -08:00
codec-redis Adding 'final' keyword for private fields where possible 2017-02-14 08:29:15 +01:00
codec-smtp [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
codec-socks Fix misordered 'assertEquals' arguments in tests 2017-03-08 22:48:37 -08:00
codec-stomp [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
codec-xml Fix some warnings at generics usage 2017-02-22 07:29:59 +01:00
common UnorderedThreadPoolEventExecutor consumes 100% CPU when idle 2017-03-09 11:12:42 +01:00
example Make methods 'static' where it missed 2017-02-23 11:01:57 +01:00
handler Support for handling SSL and non-SSL in pipeline 2017-03-09 01:00:43 -08:00
handler-proxy Make netty build work on Java9 2017-02-16 20:26:30 +01:00
license Remove reference to akka code and ArrayDeque which is not part of netty anymore 2017-03-07 21:30:51 +01:00
microbench SslHandler benchmark and SslEngine multiple packets benchmark 2017-03-06 08:42:39 -08:00
resolver Fix some warnings at generics usage 2017-02-22 07:29:59 +01:00
resolver-dns Prefer JDK ThreadLocalRandom implementation over ours. 2017-02-16 15:44:00 -08:00
tarball [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
testsuite Motivation: 2017-03-06 14:43:52 -08:00
testsuite-autobahn Move AutobahnTestsuite to extra module 2017-02-21 10:13:31 +01:00
testsuite-osgi Make netty build work on Java9 2017-02-16 20:26:30 +01:00
transport Fix misordered 'assertEquals' arguments in tests 2017-03-08 22:48:37 -08:00
transport-native-epoll Motivation: 2017-03-06 14:43:52 -08:00
transport-rxtx [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
transport-sctp [maven-release-plugin] prepare for next development iteration 2017-01-30 15:14:02 +01:00
transport-udt Remove annotation from package-info.java as IDEA not like it, cleanup of 4734ef61a5 2017-03-01 21:06:59 +01:00
.fbprefs Updated Find Bugs configuration 2009-03-04 10:33:09 +00:00
.gitignore Use shaded dependency on JCTools instead of copy and paste 2016-06-10 13:19:45 +02:00
.travis.yml Travis CI branch whitelisting 2013-03-11 09:55:43 +09:00
CONTRIBUTING.md Move the pull request guide to the developer guide 2014-03-12 13:13:58 +09:00
LICENSE.txt Relicensed to Apache License v2 2009-08-28 07:15:49 +00:00
NOTICE.txt Remove reference to akka code and ArrayDeque which is not part of netty anymore 2017-03-07 21:30:51 +01:00
pom.xml Update to netty-tcnative 2.0.0.Beta7 2017-03-03 17:58:43 +01:00
README.md Updating Branches to look section to match the current branching structure of the project 2016-03-10 22:08:01 +01:00
run-example.sh Add an example client for codec-redis 2016-04-23 11:18:12 -07:00

Netty Project

Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.

How to build

For the detailed information about building and developing Netty, please visit the developer guide. This page only gives very basic information.

You require the following to build Netty:

Note that this is build-time requirement. JDK 5 (for 3.x) or 6 (for 4.0+) is enough to run your Netty-based application.

Branches to look

Development of all versions takes place in each branch whose name is identical to <majorVersion>.<minorVersion>. For example, the development of 3.9 and 4.0 resides in the branch '3.9' and the branch '4.0' respectively.