The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

dllockinit (3)
  • >> dllockinit (3) ( FreeBSD man: Библиотечные вызовы )

  • BSD mandoc
     

    NAME

    dllockinit
    
     - register thread locking methods with the dynamic linker
    
     
    

    LIBRARY

    Lb libc
    
     
    

    SYNOPSIS

       #include <dlfcn.h>
    void dllockinit (void *context void *(*lock_create)(void *context) void (*rlock_acquire)(void *lock) void (*wlock_acquire)(void *lock) void (*lock_release)(void *lock) void (*lock_destroy)(void *lock) void (*context_destroy)(void *context));
     

    DESCRIPTION

    Bf Sy Due to enhancements in the dynamic linker, this interface is no longer needed. It is deprecated and will be removed from future releases. In current releases it still exists, but only as a stub which does nothing. Ef

    Threads packages can call dllockinit ();
    at initialization time to register locking functions for the dynamic linker to use. This enables the dynamic linker to prevent multiple threads from entering its critical sections simultaneously.

    The Fa context argument specifies an opaque context for creating locks. The dynamic linker will pass it to the Fa lock_create function when creating the locks it needs. When the dynamic linker is permanently finished using the locking functions (e.g., if the program makes a subsequent call to dllockinit ();
    to register new locking functions) it will call Fa context_destroy to destroy the context.

    The Fa lock_create argument specifies a function for creating a read/write lock. It must return a pointer to the new lock.

    The Fa rlock_acquire and Fa wlock_acquire arguments specify functions which lock a lock for reading or writing, respectively. The Fa lock_release argument specifies a function which unlocks a lock. Each of these functions is passed a pointer to the lock.

    The Fa lock_destroy argument specifies a function to destroy a lock. It may be NULL if locks do not need to be destroyed. The Fa context_destroy argument specifies a function to destroy the context. It may be NULL if the context does not need to be destroyed.

    Until dllockinit ();
    is called, the dynamic linker protects its critical sections using a default locking mechanism which works by blocking the SIGVTALRM SIGPROF and SIGALRM signals. This is sufficient for many application level threads packages, which typically use one of these signals to implement preemption. An application which has registered its own locking methods with dllockinit ();
    can restore the default locking by calling dllockinit ();
    with all arguments NULL  

    SEE ALSO

    rtld(1), signal(3)  

    HISTORY

    The dllockinit ();
    function first appeared in Fx 4.0 .


     

    Index

    NAME
    LIBRARY
    SYNOPSIS
    DESCRIPTION
    SEE ALSO
    HISTORY


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру