Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

io.github.libtmux.control.EventSubscription.EventSubscription

Java
  • Python Unavailable
  • Ruby Unavailable
  • Lua Unavailable
  • TypeScript Unavailable
  • Rust Unavailable
  • Go Unavailable
  • Java
  • .NET Unavailable
  • C++ Unavailable
  • Swift Unavailable

View as Markdown

Module
io.github.libtmux.control.EventSubscription
Package
io.github.libtmux:libtmux
Source
libtmux/src/main/java/io/github/libtmux/control/EventSubscription.java
class io.github.libtmux.control.EventSubscription.EventSubscription
classreadonly [source]
classreadonly [source]
class io.github.libtmux.control.EventSubscription.EventSubscription

Pulls events volunteered by one control client.

Each subscription owns a fixed-capacity buffer. When that buffer is full, the next event replaces its oldest event and increments #droppedCount() ; another subscription has its own buffer and loss count. The control protocol reader only offers values to these buffers. It never runs subscriber code. Public operations are thread-safe; concurrent readers compete for the same sequence, and each event is returned at most once.

Closing is terminal: it discards buffered events, wakes threads blocked in #next() , and makes every later read return empty. Events discarded by close are not overflow and do not increment the loss count.

6 declared, 0 inherited

Members

  • close method Discards buffered events, removes this subscriber, and wakes every waiting reader.
  • droppedCount method Returns the exact number of events discarded because this subscription's buffer was full.
  • EventSubscription method
  • isClosed method Whether this subscription has reached its terminal state.
  • next method Waits until the next event arrives or this subscription closes.
  • offer method
Esc

Type to search.