NSPR API ReferenceIntroduction to NSPR NSPR Naming Conventions NSPR Threads Thread Scheduling Setting Thread Priorities Preempting Threads Interrupting Threads NSPR Thread Synchronization Locks and Monitors Condition Variables NSPR Sample Code NSPR Types Calling Convention Types Algebraic Types 8-, 16-, and 32-bit Integer Types Signed Integers Unsigned Integers 64-bit Integer Types Floating-Point Integer Type Native OS Integer Types Miscellaneous Types Size Type Pointer Difference Types Boolean Types Status Type for Return Values Threads Threading Types and Constants Threading Functions Creating, Joining, and Identifying Threads Controlling Thread Priorities Controlling Per-Thread Private Data Interrupting and Yielding Setting Global Thread Concurrency Getting a Thread's Scope Process Initialization Identity and Versioning Name and Version Constants Initialization and Cleanup Module Initialization Locks Lock Type Lock Functions Condition Variables Condition Variable Type Condition Variable Functions Monitors Monitor Type Monitor Functions Cached Monitors Cached Monitor Functions I/O Types Directory Type File Descriptor Types File Info Types Network Address Types Types Used with Socket Options Functions Type Used with Memory-Mapped I/O Offset Interpretation for Seek Functions I/O Functions Functions that Operate on Pathnames Functions that Act on File Descriptors Directory I/O Functions Socket Manipulation Functions Converting Between Host and Network Addresses Memory-Mapped I/O Functions Anonymous Pipe Function Polling Functions Pollable Events Manipulating Layers Network Addresses Network Address Types and Constants Network Address Functions Atomic Operations PR_AtomicIncrement PR_AtomicDecrement PR_AtomicSet Interval Timing Interval Time Type and Constants Interval Functions Date and Time Types and Constants Time Parameter Callback Functions Functions Memory Management Operations Memory Allocation Functions Memory Allocation Macros String Operations PL_strlen PL_strcpy PL_strdup PL_strfree Floating Point Number to String Conversion PR_strtod PR_dtoa PR_cnvtf Long Long (64-bit) IntegersBitMapsFormatted PrintingLinked Lists Linked List Types PRCList Linked List Macros PR_INIT_CLIST PR_INIT_STATIC_CLIST PR_APPEND_LINK PR_INSERT_LINK PR_NEXT_LINK PR_PREV_LINK PR_REMOVE_LINK PR_REMOVE_AND_INIT_LINK PR_INSERT_BEFORE PR_INSERT_AFTER Dynamic Library Linking Library Linking Types PRLibrary PRStaticLinkTable Library Linking Functions PR_SetLibraryPath PR_GetLibraryPath PR_GetLibraryName PR_FreeLibraryName PR_LoadLibrary PR_UnloadLibrary PR_FindSymbol PR_FindSymbolAndLibrary Finding Symbols Defined in the Main Executable Program Platform Notes Dynamic Library Search Path Exporting Symbols from the Main Executable Program Process Management and Interprocess Communication Process Management Types and Constants PRProcess PRProcessAttr Process Management Functions Setting the Attributes of a New Process Creating and Managing Processes Multiwait ReceiveSystem Information and Environment VariablesLogging Conditional Compilation and Execution Log Types and Variables PRLogModuleInfo PRLogModuleLevel NSPR_LOG_MODULES NSPR_LOG_FILE Logging Functions and Macros PR_NewLogModule PR_SetLogFile PR_SetLogBuffering PR_LogPrint PR_LogFlush PR_LOG_TEST PR_LOG PR_Assert PR_ASSERT PR_NOT_REACHED Use Example Instrumentation CountersNamed Shared Memory Shared Memory Protocol Named Shared Memory Functions Anonymous Shared Memory Anonymous Memory Protocol Anonymous Shared Memory Functions IPC Semaphores IPC Semaphore Functions Thread Pools Thread Pool Types Thread Pool Functions Random Number Generator Random Number Generator Function Hash Tables Hash Tables and Type Constants Hash Table Functions NSPR Error Handling Error Type Error Functions Error Codes