Projects
Browse Source     Search     Timeline     Wiki

Changeset 23141

Show
Ignore:
Timestamp:
03/06/07 16:54:30 (21 months ago)
Author:
zarzycki@…
Message:

Allow jobs to tweak their basic start interval at runtime.

Location:
trunk/launchd/src
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/launchd/src/launchd_core_logic.c

    r23140 r23141  
    41954195                *outval = !j->ondemand; 
    41964196                break; 
     4197        case VPROC_GSK_START_INTERVAL: 
     4198                *outval = j->start_interval; 
     4199                break; 
    41974200        case 0: 
    41984201                *outval = 0; 
     
    42094212        case VPROC_GSK_BASIC_KEEPALIVE: 
    42104213                j->ondemand = !inval; 
     4214                break; 
     4215        case VPROC_GSK_START_INTERVAL: 
     4216                if ((unsigned int)inval > 0) { 
     4217                        j->start_interval = inval; 
     4218                        job_assumes(j, kevent_mod((uintptr_t)&j->start_interval, EVFILT_TIMER, EV_ADD, NOTE_SECONDS, j->start_interval, j) != -1); 
     4219                } else if (j->start_interval) { 
     4220                        job_assumes(j, kevent_mod((uintptr_t)&j->start_interval, EVFILT_TIMER, EV_DELETE, 0, 0, NULL) != -1); 
     4221                        j->start_interval = 0; 
     4222                } 
    42114223                break; 
    42124224        case 0: 
  • trunk/launchd/src/libvproc_public.h

    r23140 r23141  
    3535        VPROC_GSK_IS_NATIVE, 
    3636        VPROC_GSK_BASIC_KEEPALIVE, 
     37        VPROC_GSK_START_INTERVAL, 
    3738} vproc_gsk_t; 
    3839