1610da160SSascha Wildner.\" Copyright (C) 2000 Jason Evans <jasone@FreeBSD.org>. 2610da160SSascha Wildner.\" All rights reserved. 3610da160SSascha Wildner.\" 4610da160SSascha Wildner.\" Redistribution and use in source and binary forms, with or without 5610da160SSascha Wildner.\" modification, are permitted provided that the following conditions 6610da160SSascha Wildner.\" are met: 7610da160SSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 8610da160SSascha Wildner.\" notice(s), this list of conditions and the following disclaimer as 9610da160SSascha Wildner.\" the first lines of this file unmodified other than the possible 10610da160SSascha Wildner.\" addition of one or more copyright notices. 11610da160SSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 12610da160SSascha Wildner.\" notice(s), this list of conditions and the following disclaimer in 13610da160SSascha Wildner.\" the documentation and/or other materials provided with the 14610da160SSascha Wildner.\" distribution. 15610da160SSascha Wildner.\" 16610da160SSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY 17610da160SSascha Wildner.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18610da160SSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 19610da160SSascha Wildner.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE 20610da160SSascha Wildner.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21610da160SSascha Wildner.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22610da160SSascha Wildner.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 23610da160SSascha Wildner.\" BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 24610da160SSascha Wildner.\" WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 25610da160SSascha Wildner.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26610da160SSascha Wildner.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27610da160SSascha Wildner.\" 28610da160SSascha Wildner.\" $FreeBSD: src/lib/libc_r/man/pthread_schedparam.3,v 1.2.2.5 2001/12/17 10:08:26 ru Exp $ 29*bb5b9becSSascha Wildner.\" 30*bb5b9becSSascha Wildner.Dd February 22, 2018 31610da160SSascha Wildner.Dt PTHREAD_SCHEDPARAM 3 32610da160SSascha Wildner.Os 33610da160SSascha Wildner.Sh NAME 34610da160SSascha Wildner.Nm pthread_setschedparam , 35610da160SSascha Wildner.Nm pthread_getschedparam 36610da160SSascha Wildner.Nd thread scheduling parameter manipulation 37610da160SSascha Wildner.Sh LIBRARY 389964d5efSSascha Wildner.Lb libpthread 39610da160SSascha Wildner.Sh SYNOPSIS 40610da160SSascha Wildner.In pthread.h 41610da160SSascha Wildner.Ft int 42610da160SSascha Wildner.Fn pthread_setschedparam "pthread_t thread" "int policy" "const struct sched_param *param" 43610da160SSascha Wildner.Ft int 44*bb5b9becSSascha Wildner.Fn pthread_getschedparam "pthread_t thread" "int * restrict policy" "struct sched_param * restrict param" 45610da160SSascha Wildner.Sh DESCRIPTION 46610da160SSascha WildnerThe 47610da160SSascha Wildner.Fn pthread_setschedparam 48610da160SSascha Wildnerand 49610da160SSascha Wildner.Fn pthread_getschedparam 50610da160SSascha Wildnerfunctions set and get the scheduling parameters of individual threads. 51610da160SSascha WildnerThe scheduling policy for a thread can either be 52610da160SSascha Wildner.Dv SCHED_FIFO 5315acf97dSSascha Wildner(first in, first out), 54610da160SSascha Wildner.Dv SCHED_RR 5515acf97dSSascha Wildner(round-robin), or 5615acf97dSSascha Wildner.Dv SCHED_OTHER 5715acf97dSSascha Wildner(timesharing). 5815acf97dSSascha WildnerValid thread priorities (accessed via 5915acf97dSSascha Wildner.Fa param->sched_priority ) 6015acf97dSSascha Wildnermust be within the range returned by the 6115acf97dSSascha Wildner.Xr sched_get_priority_min 2 6215acf97dSSascha Wildnerand 6315acf97dSSascha Wildner.Xr sched_get_priority_max 2 6415acf97dSSascha Wildnersystem calls. 65610da160SSascha Wildner.Sh RETURN VALUES 66610da160SSascha WildnerIf successful, these functions return 0. 67610da160SSascha WildnerOtherwise, an error number is returned to indicate the error. 68610da160SSascha Wildner.Sh ERRORS 6915acf97dSSascha WildnerThe 70610da160SSascha Wildner.Fn pthread_setschedparam 7115acf97dSSascha Wildnerfunction will fail if: 72610da160SSascha Wildner.Bl -tag -width Er 73610da160SSascha Wildner.It Bq Er EINVAL 74610da160SSascha WildnerInvalid value for 7515acf97dSSascha Wildner.Fa policy . 76610da160SSascha Wildner.It Bq Er ENOTSUP 77610da160SSascha WildnerInvalid value for scheduling parameters. 78610da160SSascha Wildner.It Bq Er ESRCH 79610da160SSascha WildnerNon-existent thread 8015acf97dSSascha Wildner.Fa thread . 81610da160SSascha Wildner.El 82610da160SSascha Wildner.Pp 8315acf97dSSascha WildnerThe 84610da160SSascha Wildner.Fn pthread_getschedparam 8515acf97dSSascha Wildnerfunction will fail if: 86610da160SSascha Wildner.Bl -tag -width Er 87610da160SSascha Wildner.It Bq Er ESRCH 88610da160SSascha WildnerNon-existent thread 8915acf97dSSascha Wildner.Fa thread . 90610da160SSascha Wildner.El 9115acf97dSSascha Wildner.Sh SEE ALSO 9215acf97dSSascha Wildner.Xr sched_get_priority_max 2 , 9315acf97dSSascha Wildner.Xr sched_get_priority_min 2 94610da160SSascha Wildner.Sh STANDARDS 9515acf97dSSascha WildnerThe 96610da160SSascha Wildner.Fn pthread_setschedparam 97610da160SSascha Wildnerand 98610da160SSascha Wildner.Fn pthread_getschedparam 9915acf97dSSascha Wildnerfunctions conform to 10015acf97dSSascha Wildner.St -susv2 . 101