Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 31.021.949 Times

libwp 0.1

  Date Added: November 10, 2010  |  Visits: 838


Report Broken Link
Printer Friendly Version

Product Homepage
Download (70 downloads)

libwp provides a simplified facility for a common use of threads, processing tasks using a pool of threads. libwp is implemented with POSIX threads (pthreads) for the Solaris and Linux platforms. The primary development platform is Solaris. Usage: Creating a Pool Before you can do any processing with libwp you must create a pool using wp_new(). This will create and configure your pool and populate it with the required number of worker threads. If you dont specify a number of threads (i.e. size is 0), then libwp will automatically calculate a number of threads which are appropriate for the number of available processors. The function pointers you provide are the default functions used to execute and report on submitted tasks. Using a Pool Once youve created your pool, you can go ahead and run tasks in the pool. You queue a task for execution with wp_run() or wp_run_task(). If a worker thread is available then the task will be immediately allocated to the thread and processed. If there are no available worker threads then the task will be queued for processing when a thread becomes available. wp_run() will use the default process and report arguments supplied when the pool was created (see wp_new()). wp_run_task() uses the supplied process and report arguments. Destroying a Pool Once you are finished with a pool, then you should destroy it with wp_free(). Destroying the pool will reclaim all resources associated with the pool. This is a blocking call and the invoking thread will wait until all currently active threads terminate before returning. The wait flag controls the behaviour of the function. If WP_WAIT is specified, then the pool will not be destroyed until there are no active threads. Whilst it is waiting for this to occur additional task requests may be queued. If WP_IMMEDIATE is specified, then the pool will not accept more task requests and will be destroyed as soon as all active task are finished. Utility Functions The two message logging functions (wp_log() and wp_die()) are synchronized so that all messages are displayed atomically. wp_close() can be used to close a pool. This has the same effect as calling wp_free() but does not reclaim the pool resources. wp_open() can be used to re-open a previously closed (wp_close()) pool. wp_resize() can be used to resize a currently open and active pool. wp_wait() can be used to cause a thread to wait for a worker pool to quiesce, i.e. no outstanding jobs in the pool. Be careful using this function as external co-ordination is required to prevent race conditions from developing. wp_active() can be used to determine how many worker threads are currently busy and wp_state() is used to determine if the worker pool is still accepting new tasks. Once a pool is closed, state of WP_INACTIVE, it will no longer accept further task requests. wp_enable_stats() can be used to cause the pool to start collecting performance statistics. These statistics can be retrieved and examined using wp_get_stats(). Statistics collection is disabled using wp_disable_stats()..

Requirements: No special requirements
Platforms: Linux
Keyword: Libraries Libwp Pool Programming Task Threads Use Of Used Used To Using Using A
Users rating: 0/10

License: Freeware Size: 317.44 KB
Multimedia & Graphics  -  S4A 1.1
S4A is an easy to use application specially designed to offer users a a Scratch modification that supports simple programming of the Arduino open source hardware platform. It provides new blocks for managing sensors and actuators connected to...
Utilities  -  PowerTop 1.7
PowerTop project detects which Linux programs and kernel tunables are resulting in the largest power consumption and use of battery time. Power usage is a hot topic for computer users everywhere. For some, its a matter of how long a laptop lasts...
56.32 KB  
Utilities  -  Sarah's Task Manager New
Sarah's Task Manager is a handy, easy to use application specially designed to offer users a Task Manager with processes, services, computer info, process count, and CPU Usage. for WindowsAll
Programming  -  NTW Lisp 0.2.1
NTW Lisp project is a server written in Common Lisp for applications that use the NTW protocol to communicate with a GUI client. NTW is a collection of three things: - A protocol used to describe GUI widgets and events. - A client program...
16.38 KB  
Finance  -  JMuPDF 2011-01-12
JMuPDF is a handy, easy to use application specially designed to offer users a PDF renderer written using the Java programming language. JNI is used to access native libraries to render documents quickly and efficiently. for WindowsNT, 2K, XP,...
Development Editors  -  CLIPS 6.30 Beta
CLIPS is a small, easy to use application specially designed to offer you a productive development and delivery expert system tool that offers a complete environment for the construction of rule and/or object based expert systems. for WindowsAll
Finance  -  Fat Tail Option Calculator 1.0
The Fat Tail Option calculator makes use of Stable Distributions to estimate the theoretical value of European options. This provides a richer method with a better fit to real data and real capital market behavior than the common Black-Scholes...
2 MB  
DNS Tools  -  DNS Flood Detector 1.12
DNS Flood Detector was developed to detect abusive usage levels on high traffic nameservers and to enable quick response in halting (among other things) the use of ones nameserver to facilitate spam. DNS Flood Detector uses libpcap (in...
15.36 KB  
Arcade Style Games  -  Catapult Madness 1.0
Your castle is under siege! Make use of your catapult to launch peasants to reach a neighbor castle and ask for help. Use magic, bombs, beans, beer and other crazy stuff to achieve your ultimate goal. Mouse to interact Arrow keys to control glider...
10.75 MB  
Multimedia & Graphics  -  Astronomy Calculators 1.0
Astronomy Calculators is a small, easy to use application, specially designed to offer users a collection of small and simple calculator utilities. The aim of these calculator is to help amateur astronomers with the mundane calculations for...
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.13.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB