{"added":null,"apiVersion":1,"behindSince":null,"buildDepends":[],"categories":["devel","perl5"],"comment":"Drop-in replacement for Perl threads using fork()","compare":"/compare/p5-forks/index.json","dependentCount":null,"description":"The \"forks\" pragma allows a developer to use threads without having to\nhave a threaded perl, or to even run 5.8.0 or higher. There were a number\nof goals that I am trying to reach with this implementation.\n\nThe standard Perl 5.8.0 threads implementation is very memory consuming,\nwhich makes it basically impossible to use in a production environment,\nparticularly with mod_perl and Apache. Because of the use of the standard\nUnix fork() capabilities, most operating systems will be able to use the\nCopy-On-Write (COW) memory sharing capabilities (whereas with the standard\nPerl 5.8.0 threads implementation, this is thwarted by the Perl interpreter\ncloning process that is used to create threads). The memory savings have\nbeen confirmed.\n\nYou should be able to run threaded applications unchanged by simply making\nsure that the \"forks\" and \"forks::shared\" modules are loaded,\ne.g. by specifying them on the command line.","flavors":[],"html":"https://daemonports.org/dragonfly/devel/p5-forks/","kind":"port","lastUpdate":null,"license":["ART10","GPLv1+"],"maintainer":"perl@FreeBSD.org","name":"p5-forks","newest":true,"newestVersion":"0.36","noVulnData":false,"origin":"devel/p5-forks","otherSystems":[{"maintainer":"perl@FreeBSD.org","newest":true,"origin":"devel/p5-forks","path":"/devel/p5-forks/","system":"FreeBSD","version":"0.36_2"},{"maintainer":"The OpenBSD ports mailing-list \u003cports@openbsd.org\u003e","newest":true,"noVulnData":true,"origin":"devel/p5-forks","path":"/openbsd/devel/p5-forks/","system":"OpenBSD","version":"0.36p2"},{"maintainer":"pkgsrc-users@NetBSD.org","newest":true,"origin":"devel/p5-forks","path":"/netbsd/devel/p5-forks/","system":"NetBSD","updated":"2026-07-16","version":"0.36nb12"},{"maintainer":"perl@FreeBSD.org","newest":true,"noVulnData":true,"origin":"devel/p5-forks","path":"","system":"HardenedBSD","version":"0.36_2"},{"maintainer":"perl@FreeBSD.org","newest":true,"noVulnData":true,"origin":"devel/p5-forks","path":"","system":"GhostBSD","version":"0.36_2"}],"packages":null,"pkgName":"p5-forks-0.36_2","related":null,"repository":"DPorts","requiredBy":["graphics/npretty"],"requiredByCount":1,"runDepends":["devel/p5-Acme-Damn","devel/p5-Attribute-Handlers","devel/p5-Devel-Symdump","devel/p5-Sys-SigAction","lang/p5-List-MoreUtils","lang/perl5.36"],"status":null,"system":"dragonfly","systemLabel":"DragonFly","version":"0.36_2","versions":null,"vulnerabilities":null,"www":"https://metacpan.org/release/forks"}
