title: Wait async for a event from a never ending Task
body: <p>Currently I'am build a webserver that needs to wait from incoming messages, but i need to wait asynchronisally for these messages. These messages are received in an other Task that keeps running. The endless task pushes Events and the other Task needs to wait for one of these events too be received.</p>
  
  <p><em>If will make a sketch if needed to visualize the problem better</em> </p>
  
  <p>I have seen the TaskCompletionSource class but the task will not complete except when the client disconnects so that's not going to work. Await for the task is exactly the same.</p>
  
  <p>Is there a Library or build in solution for C#/.net core?</p>
  
  <p>Thank you :)</p>