LocalQueue and SubscriptionManager both have get() functions that take a
timeout. The timeout defaults to 0, so the default meaning of get is "if
there's a message immediately available, get it, else give up."

I'm responsible for that default but it now strikes me as completely
wrong. In an async messaging system you very rarely know when a message
is "there" you almost always want to wait for it.  

TIME_INFINITE might be a more appropriate default, although there's a
risk of silently breaking existing code. Removing the default entirely
would give a compile error in existing code (which is better) and would
force the developer to be clear about what they want?

Anyone agree/disagree with changing or removing the default?

Reply via email to