/*
- * Copyright (C) 2006-2008 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2010 Andre Noll <maan@systemlinux.org>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
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 *);
};
/**
/** 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];
};
/**
extern struct timeval *now;
void register_task(struct task *t);
-void unregister_task(struct task *t);
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);
+void sched_request_barrier(struct timeval *barrier, struct sched *s);
+void sched_request_barrier_or_min_delay(struct timeval *barrier, struct sched *s);