ns_sched(3aolserver) | AOLserver Built-In Commands | ns_sched(3aolserver) |
NAME¶
ns_after, ns_cancel, ns_pause, ns_resume, ns_schedule_daily, ns_schedule_proc, ns_schedule_weekly, ns_unschedule_proc - commands
SYNOPSIS¶
ns_after seconds {script | procname ?args?}
ns_cancel id
ns_pause id
ns_resume id
ns_schedule_daily ?-thread? ?-once? hour minute {script | procname ?args?}
ns_schedule_proc ?-thread? ?-once? interval {script | procname ?args?}
ns_schedule_weekly ?-thread? ?-once? day hour minute {script | procname ?args?}
ns_unschedule_proc id
DESCRIPTION¶
ns_after
ns_after returns an id which can be used with the ns_pause, ns_cancel and ns_resume apis.
ns_cancel
returns 1 if unscheduled 0 if the script of procedure couldn't be unscheduled
ns_pause
returns 1 if paused, 0 if the script of procedure couldn't be paused
ns_resume
returns 1 if resumed, 0 if the script of procedure couldn't be resumed
ns_schedule_daily
Specify -thread if you want a thread created to run the procedure. This will allow the scheduler to continue with other scheduled procedures. Specifying -thread is appropriate in situations where the script will not return immediately, such as when the script performs network activity.
Specify -once if you want the script to run only one time. The default is that the script will be re-scheduled after each time it is run.
ns_schedule_daily returns an id number for the scheduled procedure that is needed to stop the scheduled procedure with ns_unschedule_proc.
ns_schedule_proc
Specify -thread if you want a thread created to run the procedure. This will allow the scheduler to continue with other scheduled procedures. Specifying -thread is appropriate in situations where the script will not return immediately, such as when the script performs network activity.
Specify -once if you want the script to run only one time. The default is that the script will be re-scheduled after each time it is run.
ns_schedule_proc returns an id number for the scheduled procedure that is needed to stop the scheduled procedure with ns_unschedule_proc.
Specify -thread if you want a thread created to run the procedure. This will allow the scheduler to continue with other scheduled procedures. Specifying -thread is appropriate in situations where the script will not return immediately, such as when the script performs network activity.
Specify -once if you want the script to run only one time. The default is that the script will be re-scheduled after each time it is run.
ns_schedule_weekly returns an id number for the scheduled procedure that is needed to stop the scheduled procedure with ns_unschedule_proc.
ns_unschedule_proc id
EXAMPLES¶
ns_after ns_cancel ns_pause ns_resume
set action [ns_queryget action] set job [ns_queryget job] switch $action {
create {
set job [ns_after 10 [ns_queryget script]]
ns_puts "Job created with id: $job"
}
cancel {
if {[ns_cancel $job]} {
ns_puts "Job $job cancelled"
} else {
ns_puts "Job $job not cancelled"
}
}
pause {
if {[ns_pause $job]} {
ns_puts "Job $job paused"
} else {
ns_puts "Job $job not paused
}
}
resume {
if {[ns_resume $job]} {
ns_puts "Job $job resumed"
} else {
ns_puts "Job $job couldn't be resumed"
}
}
default {
ns_puts "Invalid action $action"
} }
ns_schedule_daily
# Script to roll and rcp log file to host "grinder" proc rolllog {} {
set suffix [ns_strftime "%y-%m-%d"]
set new [ns_accesslog file].$suffix
ns_accesslog roll $new
exec rcp $new grinder:/logs/[file tail $new] } # Schedule "rolllog" to run at 3:30 am each morning ns_schedule_daily -thread 3 30 rolllog
ns_schedule_proc
proc dosomething blah {
ns_log Notice "proc with arg '$blah'" } ns_schedule_proc 10 dosomething $arg1
SEE ALSO¶
KEYWORDS¶
schedule pause resume unschedule cancel after
4.0 | AOLserver |