Interfaces suportadas

Nos sistemas AIX, os símbolos _POSIX_THREADS, _POSIX_THREAD_ATTR_STACKADDR, _POSIX_THREAD_ATTR_STACKSIZE e _POSIX_THREAD_PROCESS_SHARED são sempre definidos.

Portanto, as interfaces de threads a seguir são suportadas.

POSIX interfaces

A seguir está uma lista de interfaces POSIX :
  • pthread_atfork
  • pthread_attr_destruir
  • pthread_attr_getdetachstate
  • pthread_attr_getplanejparam
  • pthread_attr_getstacksize
  • pthread_attr_getstackaddr
  • pthread_attr_init
  • pthread_attr_setdetachstate
  • pthread_attr_setprogramparam
  • pthread_attr_setstackaddr
  • pthread_attr_setstacksize
  • pthread_cancelar
  • pthread_cleanup_pop
  • pthread_cleanup_push
  • pthread_detach
  • pthread_equal
  • pthread_exit
  • pthread_getspecific
  • pthread_join
  • pthread_key_create
  • pthread_key_delete
  • pthread_kill
  • pthread_mutex_destruir
  • pthread_mutex_init
  • pthread_mutex_lock
  • pthread_mutex_trylock
  • pthread_mutex_unlock
  • pthread_mutexattr_destruir
  • pthread_mutexattr_getpshared
  • pthread_mutexattr_init
  • pthread_mutexattr_setpshared
  • pthread_once
  • pthread_self
  • pthread_setcancelstate
  • pthread_setcanceltype
  • pthread_setspecific
  • pthread_sigmask
  • pthread_testcancelar
  • pthread_cond_broadcast
  • pthread_cond_destruir
  • pthread_cond_init
  • pthread_cond_signal
  • pthread_cond_timedwait
  • pthread_cond_wait
  • pthread_condattr_destruir
  • pthread_condattr_getpshared
  • pthread_condattr_init
  • pthread_condattr_setpshared
  • pthread_create
  • signo

Especificação única do UNIX, versão 2 Interfaces

A seguir está uma lista de interfaces Single UNIX Specification, Versão 2 :
  • pthread_attr_getguardsize
  • pthread_attr_setguardsize
  • pthread_getconcurrency
  • pthread_mutexattr_gettype
  • pthread_mutexattr_settype
  • pthread_rwlock_destruir
  • pthread_rwlock_init
  • pthread_rwlock_rdlock
  • pthread_rwlock_tryrdlock
  • pthread_rwlock_trywrlock
  • pthread_rwlock_unlock
  • pthread_rwlock_wrlock
  • pthread_rwlockattr_destruir
  • pthread_rwlockattr_getpshared
  • pthread_rwlockattr_init
  • pthread_rwlockattr_setpshared
  • pthread_setconmoeda
Em sistemas AIX , o símbolo _POSIX_THREAD_SAFE_FUNCTIONS é sempre definido. Por isso, as interfaces a seguir são sempre suportadas:
  • asctime_r
  • ctime_r
  • arquivo de rebanho
  • ftrylockfile
  • arquivo funlockfile
  • getc_unlocked
  • getchar_unlocked
  • getgrgid_r
  • getgrnam_r
  • getpwnam_r
  • getpwuid_r
  • gmtime_r
  • localtime_r
  • putc_unlocked
  • putchar_unlocked
  • rand_r
  • readdir_r
  • strtok_r
AIX não suporta as interfaces a seguir; os símbolos são fornecidos mas eles sempre retornam um erro e configuram o errno para ENOSYS:
  • pthread_mutex_getprioceiling
  • pthread_mutex_setprioceiling
  • pthread_mutexattr_getprioceiling
  • pthread_mutexattr_getprotocol
  • pthread_mutexattr_setprioceiling
  • pthread_mutexattr_setprotocol

Interfaces não encadeadas

Biblioteca libc.a (funções padrão):
  • avanço
  • horário de pico
  • brk
  • catgets
  • chroot
  • compilar
  • ctempo
  • cuserid
  • dbm_clearerr
  • dbm_close
  • dbm_delete
  • dbm_error
  • dbm_fetch
  • dbm_firstkey
  • dbm_nextkey
  • dbm_open
  • dbm_store
  • dirnome
  • drand48
  • ecvt
  • criptografar
  • final
  • endpwent
  • suportxente
  • fcvt
  • gama
  • gcvt
  • getc_unlocked
  • getchar_unlocked
  • getdate
  • getdtablesize
  • getgrent
  • getgrgid
  • getgrnam
  • getlogin
  • getopt
  • getpagesize
  • getpass
  • getpwent
  • getpwnam
  • getpwuid
  • getutxent
  • getutxid
  • getutxline
  • getw
  • getw
  • gmtempo
  • l64a
  • lgamma
  • LOCALTIME
  • lrand48
  • mrand48
  • nl_langinfo
  • ptsnome
  • putc_unlocked
  • putchar_unlocked
  • pututxline
  • colocar
  • rand
  • aleatório
  • readdir
  • re_comp
  • re_exec
  • regcmp
  • regex
  • sbrk
  • setgrent
  • setkey
  • setpwent
  • setutxente
  • sigstack
  • srand48
  • saleatório
  • avançar
  • strerror
  • estrtok
  • ttyname
  • ttyslot
  • wait3

As seguintes interfaces AIX não são threadsafe.

libc.a Biblioteca (AIXfunções específicas):
  • endfenviados
  • endttyent
  • suportado
  • getfsent
  • getfsfile
  • getfsspec
  • getfstype
  • getttyent
  • getttynam
  • getutente
  • getutid
  • getutline
  • pututline
  • setfsent
  • colono
  • setuente
  • utmpname
Biblioteca libbsd.a :
  • fuso horário

Bibliotecas libm.a e libmsaa.a :

  • gama
  • lgamma
Nenhuma das funções nas bibliotecas a seguir é threadsafe:
  • libPW.a
  • libblas.a
  • libcur.a
  • libcurses.a
  • libplot.a
  • libprint.a

As interfaces ctermid e tmpnam não são threadsafe se forem passadas um argumento NULL.

Em um programa multiencadeado não é recomendado executar o setlocale () subroutine simultaneamente a partir de múltiplas threads se uma das threads chamar setlocale () subroutine de dentro de uma rotina de inicialização do módulo.

Nota: Certas subroutines podem ser implementadas como macros em alguns sistemas. Evite usar o endereço de subroutines de threads.