Immutant
  1. Immutant
  2. IMMUTANT-217

Have msg/listen wait for the old listener to drain its handlers

    Details

    • Type: Feature Request Feature Request
    • Status: Resolved (View Workflow)
    • Priority: Minor Minor
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 0.10.0
    • Labels:
      None
    • Similar Issues:
      Show 10 results 

      Description

      This way, we remove the currently hard-coded 5s timeout, allowing callers to replace a listener and drain any handlers taking longer than 5s.

        Gliffy Diagrams

          Activity

          Hide
          Toby Crawley added a comment -

          It looks like we still need to solve this, but I'd like to think of a different way.

          Show
          Toby Crawley added a comment - It looks like we still need to solve this, but I'd like to think of a different way.
          Hide
          Toby Crawley added a comment -

          msg/listen is now asynchronous, the return value is now a derefable that can be deref'ed if you need to synchronize on listen. This should rarely be needed - the only use-case I can come up with is attaching a listener to a topic, then immediately publishing to the topic. If you don't sync on listen, it's possible the listener won't be attached in time to receive the message.

          Show
          Toby Crawley added a comment - msg/listen is now asynchronous, the return value is now a derefable that can be deref'ed if you need to synchronize on listen. This should rarely be needed - the only use-case I can come up with is attaching a listener to a topic, then immediately publishing to the topic. If you don't sync on listen, it's possible the listener won't be attached in time to receive the message.

            People

            • Assignee:
              Toby Crawley
              Reporter:
              Jim Crossley
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development