'Javascript equivalent of Task.Yield() in C#
I have a service that can only execute one command at a time. Normally this is fine because users of this service should await the service calls and thus only one service call should begin at a time, however I can't guarantee this will always be the case. Instead, the service waits to finish its last call before it begins the next one. This is what I do in C#:
static async Task<string> Get(string url, params string[] parameters)
{
while(!isReady)
{
await Task.Yield();
}
// do stuff
}
I want to do a similar thing in an unrelated NodeJS project.
My Google-fu failed me. Is there a Javascript equivalent of C#'s Task.Yield() that I can await?
Solution 1:[1]
Ah, of course! It's simple. This might not be the best way but it works.
static async RunCommand(cmd: string, ...params: string[]): Promise<string> {
while(!this.isReady) {
await new Promise(resolve => setTimeout(resolve, 0));
}
// do stuff
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |
