BSD Ports

devel/p5-forks 0.36_2 DragonFly

Drop-in replacement for Perl threads using fork()

System
DragonFly
Repository
DPorts
Maintainer
[email protected] (as in FreeBSD)
License
ART10, GPLv1+
Categories
devel, perl5
Package size
85.4 KiB, 281.7 KiB installed

Description

The "forks" pragma allows a developer to use threads without having to have a threaded perl, or to even run 5.8.0 or higher. There were a number of goals that I am trying to reach with this implementation.

The standard Perl 5.8.0 threads implementation is very memory consuming, which makes it basically impossible to use in a production environment, particularly with mod_perl and Apache. Because of the use of the standard Unix fork() capabilities, most operating systems will be able to use the Copy-On-Write (COW) memory sharing capabilities (whereas with the standard Perl 5.8.0 threads implementation, this is thwarted by the Perl interpreter cloning process that is used to create threads). The memory savings have been confirmed.

You should be able to run threaded applications unchanged by simply making sure that the "forks" and "forks::shared" modules are loaded, e.g. by specifying them on the command line.

In the other systems

The newest version among them is 0.36, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
DragonFlydevel/p5-forks0.36_2 newestnone known-[email protected]-
FreeBSDdevel/p5-forks0.36_2 newestnone known-[email protected]-
OpenBSDdevel/p5-forks0.36p2 newestno data-The OpenBSD ports mailing-list <[email protected]>-
NetBSDdevel/p5-forks0.36nb12 newestnone known-[email protected]2026-07-16
HardenedBSDdevel/p5-forks0.36_2 newestno data-[email protected]-
GhostBSDdevel/p5-forks0.36_2 newestno data-[email protected]-

Compare across BSDs

Install

Binary package:

pkg install p5-forks

From DPorts:

cd /usr/dports/devel/p5-forks && make install clean

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

Run dependencies 6
Required by 1