X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=sched.h;h=f119025c4c73f2d6b811f8220e6cec4c2449cd0d;hp=b92aaff75bd8554069145e70a1fe0db3274c4905;hb=e7e55d0ad711a46e4768066be197bb41caa5c5eb;hpb=f15a16b7a40e263ab7e86c9437fe9db0216ba605 diff --git a/sched.h b/sched.h index b92aaff7..f119025c 100644 --- a/sched.h +++ b/sched.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2008 Andre Noll + * Copyright (C) 2006-2009 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -27,6 +27,8 @@ struct sched { fd_set wfds; /** Highest numbered file descriptor in any of the above fd sets. */ int max_fileno; + /** In non-NULL, use this function instead of para_select. */ + int (*select_function)(int, fd_set *, fd_set *, struct timeval *); }; /** @@ -61,7 +63,7 @@ struct task { /** Position of the task in the post_select list of the scheduler. */ struct list_head post_select_node; /** Descriptive text and current status of the task. */ - char status[MAXLINE]; + char status[255]; }; /** @@ -77,3 +79,6 @@ int schedule(struct sched *s); char *get_task_list(void); int kill_task(char *id); void sched_shutdown(void); +void sched_min_delay(struct sched *s); +void sched_request_timeout(struct timeval *timeout, struct sched *s); +void sched_request_timeout_ms(long unsigned ms, struct sched *s);