Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • io_uring_set_taskrun_flags
  • steal-all-io-on-hint
  • ripripgrepv4
  • io-sleep-strategies-msg-ring
  • improve-echoclient
  • improve-even-pulse
  • waitfd-sleep-strategy2
  • ripripgrepv2.5-io-sleep
  • ripripgrepv3-io-sleep
  • ripripgrepv3
  • ripripgrepv2
  • du
  • select2
  • linked-echoserver
  • cancel-callbacks-simple
  • cancel-callbacks
  • callback-fsearch-alternative
  • callback-fsearch
  • fsearch-track-outfile-offset
20 results

emper

  • Clone with SSH
  • Clone with HTTPS
  • Forked from Lehrstuhl für Informatik 4 (Systemsoftware) / manycore / emper
    Source project has a limited visibility.
    Florian Fischer's avatar
    Florian Fischer authored
    This change introduces new scheduleFromAnywhere methods which take
    a range of Fibers to schedule.
    
    Blockable gets a new method returning the fiber used to start
    the unblocked context, which is used by Future/PartialCompletableFuture
    to provide a way of completion and returning the continuation Fiber
    to the caller so they may schedule the continuation how they want.
    
    If the meson option io_batch_anywhere_completions is set the global
    completer will collect all callback and continuation fibers before
    scheduling them at once when it is done reaping the completions.
    The idea is that taking the AnywhereQueue write lock and calling onNewWork
    must only be done once.
    
    TODO: investigate if onNewWork should be extended by an amountOfWork
    argument which determines how many worker can be awoken and have work to
    do. This should be trivially since our WorkerWakeupSemaphore implementations
    already support notify_many(), which may be implemented in terms of
    notify_all though.
    bb72fca3
    History
    Name Last commit Last update