Thanks for the quick reply.
I suppose a workaround is to have a separate worker for each task.
The I can TERMINATE the worker.

A suggestion: can you suggest some standard python scaffolding to include 
in each
task function to make it listen for a kill signal / message?

On Monday, March 11, 2013 3:05:21 PM UTC-5, Niphlod wrote:
>
> once the task is inserted you should not change it's values unless its in 
> the QUEUED status (technically the ASSIGNED works too, but it's NOT 
> recommended).
> there's no way for the scheduler to terminate a specific task once the 
> task is started, unless you KILL the worker (setting the worker to 
> TERMINATE will kill the worker as soon as the RUNNING task is finished).
> PS: if you need to execute a task n times, use the repeat argument. using 
> time.sleep(something) in a task has the side-effect of NOT returning to the 
> main loop to execute potentially new QUEUED tasks (every scheduler process 
> is allowed to process a single task at a time).
> if you need to limit the time the task runs, use the timeout parameter.
>
> If something is not clear please ask.
>
> On Monday, March 11, 2013 8:04:52 PM UTC+1, dlypka wrote:
>>
>>
>> I need a way to terminate a specific Scheduled Task while it is RUNNING.
>> I tried using Admin Database Admin to update the scheduler_task.stop_time 
>> to a time close to now while it was running.
>> But the task continued for several more minutes and COMPLETED its normal 
>> 5 minute run.
>> The task calls time.sleep(300) to make it run for 5 minutes.
>>
>> I guess the Scheduler is not looking at the db values every 3 seconds.
>> Is it just checking the in memory task object properties?
>>
>> Is there a way to update the in memory object properties of a task while 
>> it is running?
>>
>> Thanks.
>>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to