diff --git a/Esyur/Core/AsyncBag.cs b/Esyur/Core/AsyncBag.cs index 6b44a92..be2ead4 100644 --- a/Esyur/Core/AsyncBag.cs +++ b/Esyur/Core/AsyncBag.cs @@ -51,6 +51,11 @@ namespace Esyur.Core return new AsyncAwaiter(this); } + public new object[] Wait() + { + return (object[])base.Wait(); + } + public void Seal() { diff --git a/Esyur/Core/AsyncBagGeneric.cs b/Esyur/Core/AsyncBagGeneric.cs index ad12c08..153a2d0 100644 --- a/Esyur/Core/AsyncBagGeneric.cs +++ b/Esyur/Core/AsyncBagGeneric.cs @@ -56,6 +56,11 @@ namespace Esyur.Core return new AsyncAwaiter(this); } + public new T[] Wait() + { + return base.Wait().Select(x => (T)x).ToArray(); + } + public AsyncBag() { diff --git a/Esyur/Core/AsyncReply.cs b/Esyur/Core/AsyncReply.cs index 0533a3c..790f96c 100644 --- a/Esyur/Core/AsyncReply.cs +++ b/Esyur/Core/AsyncReply.cs @@ -72,7 +72,6 @@ namespace Esyur.Core public object Wait() { - if (resultReady) return result; diff --git a/Esyur/Core/AsyncReplyGeneric.cs b/Esyur/Core/AsyncReplyGeneric.cs index c91a1a7..e57e281 100644 --- a/Esyur/Core/AsyncReplyGeneric.cs +++ b/Esyur/Core/AsyncReplyGeneric.cs @@ -75,7 +75,10 @@ namespace Esyur.Core return new AsyncAwaiter(this); } - + public new T Wait() + { + return (T)base.Wait(); + } /* protected new List callbacks = new List(); protected new object result;