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 30.141.985 Times

Alarm::Concurrent 1.0

  Date Added: September 24, 2010  |  Visits: 999

Alarm::Concurrent

Report Broken Link
Printer Friendly Version


Product Homepage
Download (72 downloads)

Alarm::Concurrent is a Perl module that allows multiple, concurrent alarms. This module is an attempt to enhance Perls built-in alarm/$SIG{ALRM} functionality. This function, and its associated signal handler, allow you to arrange for your program to receive a SIGALRM signal, which you can then catch and deal with appropriately. Unfortunately, due to the nature of the design of these signals (at the OS level), you can only have one alarm and handler active at any given time. Thats where this module comes in. This module allows you to define multiple alarms, each with an associated handler. These alarms are sequenced (in a queue) but concurrent, which means that their order is preserved but they always go off as their set time expires, regardless of the state of the other alarms. (If youd like to have the alarms only go off in the order you set them, see Alarm::Queued.) To set an alarm, call the setalarm() function with the set time of the alarm and a reference to the subroutine to be called when the alarm goes off. You can then go on with your program and the alarm will be called after the set time has passed. It is also possible to set an alarm that does not have a handler associated with it using Alarm::Concurrent::alarm(). (This function can also be imported into your namespace, in which case it will replace Perls built-in alarm for your package only.) If an alarm that does not have a handler associated with it goes off, the default handler, pointed to by $Alarm::Concurrent::DEFAULT_HANLDER, is called. You can change the default handler by assigning to this variable. The default $Alarm::Concurrent::DEFAULT_HANDLER simply dies with the message "Alarm clock!n". IMPORT/EXPORT No methods are exported by default but you can import any of the functions in the FUNCTIONS section. You can also import the special tag :ALL which will import all the functions in the FUNCTIONS section (except Alarm::Concurrent::restore()). OVERRIDE If you import the special tag :OVERRIDE, this module will override Perls built-in alarm function for every namespace and it will take over Perls magic %SIG variable, changing any attempts to read or write $SIG{ALRM} into calls to gethandler() and sethandler(), respectively (reading and writing to other keys in %SIG is unaffected). This can be useful when you are calling code that tries to set its own alarm "the old fashioned way." It can also, however, be dangerous. Overriding alarm is documented and should be stable but taking over %SIG is more risky (see CAVEATS). Note that if you do not override alarm and %SIG, any code you use that sets "legacy alarms" will disable all of your concurrent alarms. You can call Alarm::Concurrent::restore() to reinstall the Alarm::Concurrent handler. This function can not be imported..

Requirements: No special requirements
Platforms: Linux
Keyword: Alarm Alarmconcurrent Alarms Concurrent Handler Libraries Module Multiple Perl Module Programming Sig
Users rating: 0/10

License: Freeware Size: 7.17 KB
ALARM::CONCURRENT RELATED
Libraries  -  Alien Perl module 0.91
Alien Perl module package contains external libraries wrapped up for your viewing pleasure! SYNOPSIS perldoc Alien; Alien is a package that exists just to hold together an idea, the idea of Alien:: packages, so there is no code here, just...
10.24 KB  
Libraries  -  Module::Signature 0.55
Module::Signature is a Perl module signature file manipulation. SYNOPSIS As a shell command: % cpansign # verify an existing SIGNATURE, or # make a new one if none exists % cpansign sign # make signature; overwrites existing one %...
68.61 KB  
Libraries  -  Net::DNS::ValueDomain::DDNS 0.02
Net::DNS::ValueDomain::DDNS is a Perl module to update your Value-Domain (https://www.value-domain.com/) DynamicDNS records. SYNOPSIS use Net::DNS::ValueDomain::DDNS; # Normal usage my $ddns = Net::DNS::ValueDomain::DDNS->new;...
11.26 KB  
Libraries  -  OpenGeoDB Perl module 0.4
OpenGeDB Perl module is a module to access the OpenGeoDB database and calculate all ZIP codes in a certain radius..
3.07 KB  
Libraries  -  Sys::Hostname::Long 1.4
Sys::Hostname::Long is a Perl module to try every conceivable way to get full hostname. SYNOPSIS use Sys::Hostname::Long; $host_long = hostname_long; How to get the host full name in perl on multiple operating systems (mac, windows, unix*...
5.12 KB  
Libraries  -  Sys::PortIO 0.1
Sys::PortIO is a Perl module to perform direct port I/O from Perl. SYNOPSIS use Sys::PortIO; port_open($portnum); write_byte($portnum, $value); $value = read_byte($portnum); port_close($portnum); This module provides a Perl interface to...
737.28 KB  
Libraries  -  XML::Literal 0.02
XML::Literal is a Perl module with syntax support for XML literals. SYNOPSIS # This is not a source filter: it just augments glob(). use XML::Simple; use XML::Literal &XMLin; # Simple element my $xml1 = ; # With variable...
24.58 KB  
Libraries  -  Myco::Devel 1.22
Myco::Devel is a Perl module for myco Developers Guide. This guide is intended for developers wanting to build applications with myco. You should have a decent grasp of the Perl programming language, or else a solid grasp of another programming...
102.4 KB  
Libraries  -  Unicode::MapUTF8 1.11
Unicode::MapUTF8 is a Perl module with conversions to and from arbitrary character sets and UTF8. SYNOPSIS use Unicode::MapUTF8 qw(to_utf8 from_utf8 utf8_supported_charset); # Convert a string in ISO-8859-1 to UTF8 my $output = to_utf8({...
16.38 KB  
Libraries  -  Samba::LDAP 0.03
Samba::LDAP is a Perl module to manage a Samba PDC with an LDAP Backend. SYNOPSIS use Carp; use Samba::LDAP; my $samba = Samba::LDAP->new() or croak "Cant create objectn"; my $domain = $samba->get_local_sid();.
81.92 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
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 freedesktop.org, 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.12.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...
2.73 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