# thread.h

Go to the documentation of this file.

    00001 /*
    00002     Copyright (C) 2004 Paul Davis
    00003
    00004     This program is free software; you can redistribute it and/or modify
    00005     it under the terms of the GNU Lesser General Public License as published by
    00006     the Free Software Foundation; either version 2.1 of the License, or
    00007     (at your option) any later version.
    00008
    00009     This program is distributed in the hope that it will be useful,
    00010     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    00012     GNU Lesser General Public License for more details.
    00013
    00014     You should have received a copy of the GNU Lesser General Public License
    00015     along with this program; if not, write to the Free Software
    00016     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
    00017
    00018     $Id: thread.h 948 2006-05-15 17:12:44Z pbd $
    00019 */
    00020
    00021 #ifndef __jack_thread_h__
    00022 #define __jack_thread_h__
    00023
    00024 #ifdef __cplusplus
    00025 extern "C" {
    00026 #endif
    00027
    00028 #include <pthread.h>
    00029
    00030 /* use 512KB stack per thread - the default is way too high to be feasible
    00031  * with mlockall() on many systems */
    00032 #define THREAD_STACK 524288
    00033
    00051 int jack_acquire_real_time_scheduling (pthread_t thread, int priority);
    00052
    00069 int jack_client_create_thread (jack_client_t* client,
    00070                                pthread_t *thread,
    00071                                int priority,
    00072                                int realtime,    /* boolean */
    00073                                void *(*start_routine)(void*),
    00074                                void *arg);
    00075
    00083 int jack_drop_real_time_scheduling (pthread_t thread);
    00084
    00085 #ifdef __cplusplus
    00086 }
    00087 #endif
    00088
    00089 #endif /* __jack_thread_h__ */