Class NativeStaticallyReferencedJniMethods

java.lang.Object
io.netty.channel.epoll.NativeStaticallyReferencedJniMethods

final class NativeStaticallyReferencedJniMethods extends Object
This class is necessary to break the following cyclic dependency:
  1. JNI_OnLoad
  2. JNI Calls FindClass because RegisterNatives (used to register JNI methods) requires a class
  3. FindClass loads the class, but static members variables of that class attempt to call a JNI method which has not yet been registered.
  4. java.lang.UnsatisfiedLinkError is thrown because native method has not yet been registered.
Static members which call JNI methods must not be declared in this class!
  • Constructor Details

    • NativeStaticallyReferencedJniMethods

      private NativeStaticallyReferencedJniMethods()
  • Method Details

    • epollin

      static int epollin()
    • epollout

      static int epollout()
    • epollrdhup

      static int epollrdhup()
    • epollet

      static int epollet()
    • epollerr

      static int epollerr()
    • ssizeMax

      static long ssizeMax()
    • tcpMd5SigMaxKeyLen

      static int tcpMd5SigMaxKeyLen()
    • iovMax

      static int iovMax()
    • uioMaxIov

      static int uioMaxIov()
    • isSupportingSendmmsg

      static boolean isSupportingSendmmsg()
    • isSupportingRecvmmsg

      static boolean isSupportingRecvmmsg()
    • tcpFastopenMode

      static int tcpFastopenMode()
    • kernelVersion

      static String kernelVersion()