You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I ran the Sample/React project and tried to keep the donut from lagging under stress. Enabling CreateWorker didn't work for me :/ After which I saw your comment: "After some testing I've figured worker interaction layer adds too much complexity and makes debugging harder. It'll make more sense and will probably be more performant to use threading on C# side (#79)."
So I tried using Task on C# side.
public async Task StartStress()
{
cts?.Cancel();
cts = new CancellationTokenSource();
await Task.Run(() => Stress(cts.Token));
}
private async Task Stress(CancellationToken token)
{
while (!token.IsCancellationRequested)
{
var time = DateTime.Now;
await Task.Run(() => ComputePrime(frontend.GetStressPower()), token);
frontend.NotifyStressComplete((DateTime.Now - time).Milliseconds);
await Task.Delay(1, token);
}
}
I'm not strong in multithreading, but I thought this should work. Understandably, it didn't work
How can I run the process on a background thread? is it possible now? I will be very grateful for the answer
The text was updated successfully, but these errors were encountered:
Running C# backend on worker thread is actually a desirable scenario for my own project, so I'll most likely add an option to serve interop calls via an async queue, so that they can be processed off the main thread by default. If you'd like to future-proof for that usage scenario, make interop APIs async so that later you can just enable the option w/o breaking anything.
Repository owner
locked and limited conversation to collaborators
Apr 10, 2023
I ran the Sample/React project and tried to keep the donut from lagging under stress. Enabling CreateWorker didn't work for me :/ After which I saw your comment: "After some testing I've figured worker interaction layer adds too much complexity and makes debugging harder. It'll make more sense and will probably be more performant to use threading on C# side (#79)."
So I tried using Task on C# side.
I'm not strong in multithreading, but I thought this should work. Understandably, it didn't work
How can I run the process on a background thread? is it possible now? I will be very grateful for the answer
The text was updated successfully, but these errors were encountered: