Quantcast
Viewing all articles
Browse latest Browse all 2206

Commented Unassigned: COMException with RunningTask.Refresh() [12470]

I want check task state and i write code
```
RunningTask rt = task.Run();
do
{
Thread.Sleep(1000);
} while (rt.State == TaskState.Running);
```
However, I have infinite loop, because state is not updated (running always). When I change cycle body to
```
do
{
Thread.Sleep(1000);
rt.Refresh(); // COMException here
} while (rt.State == TaskState.Running);
```
Code fires exception if state change from Running to Unknown.

It is correct behaviour?

P.S. In the end, i write first cycle version with
```
while (task.State == TaskState.Running);
```
and I do not have problems.
Comments: ** Comment from web user: dahall **

As I suspected that error code is SCHED_E_TASK_NOT_RUNNING: There is no running instance of the task. That confirms my suspicion I shared with you. I think you are much safer using TaskEventWatcher. There is an example in the Documentation area for using it.

I have already started moving to GitHub (https://github.com/dahall/TaskScheduler). The code is there as is most of the documentation. I haven't closed this site yet as I haven't found a solution for migrating the Discussions area.


Viewing all articles
Browse latest Browse all 2206

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>