Class MainThreadChecker

java.lang.Object
io.sentry.util.thread.MainThreadChecker
All Implemented Interfaces:
IMainThreadChecker

@Internal public final class MainThreadChecker extends Object implements IMainThreadChecker
Class that checks if a given thread is the Main/UI thread. The Main thread is denoted by the thread, where the `Sentry.init` method was called. If it was inited from a background thread, then this class is wrong, but it's a best effort.

We're gonna educate people through the docs.

  • Method Details

    • getInstance

      public static MainThreadChecker getInstance()
    • isMainThread

      public boolean isMainThread(long threadId)
      Specified by:
      isMainThread in interface IMainThreadChecker
    • isMainThread

      public boolean isMainThread(@NotNull @NotNull Thread thread)
      Description copied from interface: IMainThreadChecker
      Checks if a given thread is the Main/UI thread
      Specified by:
      isMainThread in interface IMainThreadChecker
      Parameters:
      thread - the Thread
      Returns:
      true if it is the main thread or false otherwise
    • isMainThread

      public boolean isMainThread()
      Description copied from interface: IMainThreadChecker
      Checks if the calling/current thread is the Main/UI thread
      Specified by:
      isMainThread in interface IMainThreadChecker
      Returns:
      true if it is the main thread or false otherwise
    • isMainThread

      public boolean isMainThread(@NotNull @NotNull SentryThread sentryThread)
      Description copied from interface: IMainThreadChecker
      Checks if a given thread is the Main/UI thread
      Specified by:
      isMainThread in interface IMainThreadChecker
      Parameters:
      sentryThread - the SentryThread
      Returns:
      true if it is the main thread or false otherwise