1Mail::Box::Locker::FlocUks(e3r)Contributed Perl DocumentMaatiilo:n:Box::Locker::Flock(3)
2
3
4
6 Mail::Box::Locker::Flock - lock a folder using kernel file-locking
7
9 Mail::Box::Locker::Flock
10 is a Mail::Box::Locker
11 is a Mail::Reporter
12
14 See Mail::Box::Locker
15
17 The "::Flock" object locks the folder by creating an exclusive lock on
18 the file using the kernel's "flock" facilities. This lock is created
19 on a separate file-handle to the folder file, so not the handle which
20 is reading.
21
22 File locking does not work in some situations, for instance for
23 operating systems do not support "flock".
24
25 Extends "DESCRIPTION" in Mail::Box::Locker.
26
28 Extends "METHODS" in Mail::Box::Locker.
29
30 Constructors
31 Extends "Constructors" in Mail::Box::Locker.
32
33 Mail::Box::Locker::Flock->new(%options)
34 -Option --Defined in --Default
35 expires Mail::Box::Locker 1 hour
36 file Mail::Box::Locker undef
37 folder Mail::Box::Locker <undef>
38 log Mail::Reporter 'WARNINGS'
39 method Mail::Box::Locker 'FLOCK'
40 timeout Mail::Box::Locker 10
41 trace Mail::Reporter 'WARNINGS'
42
43 expires => SECONDS
44 file => FILENAME
45 folder => FOLDER
46 log => LEVEL
47 method => STRING|CLASS|ARRAY
48 timeout => SECONDS|'NOTIMEOUT'
49 trace => LEVEL
50
51 Attributes
52 Extends "Attributes" in Mail::Box::Locker.
53
54 $obj->expires( [SECONDS] )
55 Inherited, see "Attributes" in Mail::Box::Locker
56
57 $obj->timeout( [SECONDS] )
58 Inherited, see "Attributes" in Mail::Box::Locker
59
60 The Locker
61 Extends "The Locker" in Mail::Box::Locker.
62
63 $obj->filename( [$filename] )
64 Inherited, see "The Locker" in Mail::Box::Locker
65
66 $obj->folder( [$folder] )
67 Inherited, see "The Locker" in Mail::Box::Locker
68
69 $obj->name()
70 Inherited, see "The Locker" in Mail::Box::Locker
71
72 Locking
73 Extends "Locking" in Mail::Box::Locker.
74
75 $obj->hasLock()
76 Inherited, see "Locking" in Mail::Box::Locker
77
78 $obj->isLocked()
79 $obj->lock()
80 $obj->unlock()
81 Inherited, see "Locking" in Mail::Box::Locker
82
83 Error handling
84 Extends "Error handling" in Mail::Box::Locker.
85
86 $obj->AUTOLOAD()
87 Inherited, see "Error handling" in Mail::Reporter
88
89 $obj->addReport($object)
90 Inherited, see "Error handling" in Mail::Reporter
91
92 $obj->defaultTrace( [$level]|[$loglevel, $tracelevel]|[$level,
93 $callback] )
94 Mail::Box::Locker::Flock->defaultTrace( [$level]|[$loglevel,
95 $tracelevel]|[$level, $callback] )
96 Inherited, see "Error handling" in Mail::Reporter
97
98 $obj->errors()
99 Inherited, see "Error handling" in Mail::Reporter
100
101 $obj->log( [$level, [$strings]] )
102 Mail::Box::Locker::Flock->log( [$level, [$strings]] )
103 Inherited, see "Error handling" in Mail::Reporter
104
105 $obj->logPriority($level)
106 Mail::Box::Locker::Flock->logPriority($level)
107 Inherited, see "Error handling" in Mail::Reporter
108
109 $obj->logSettings()
110 Inherited, see "Error handling" in Mail::Reporter
111
112 $obj->notImplemented()
113 Inherited, see "Error handling" in Mail::Reporter
114
115 $obj->report( [$level] )
116 Inherited, see "Error handling" in Mail::Reporter
117
118 $obj->reportAll( [$level] )
119 Inherited, see "Error handling" in Mail::Reporter
120
121 $obj->trace( [$level] )
122 Inherited, see "Error handling" in Mail::Reporter
123
124 $obj->warnings()
125 Inherited, see "Error handling" in Mail::Reporter
126
127 Cleanup
128 Extends "Cleanup" in Mail::Box::Locker.
129
130 $obj->DESTROY()
131 Inherited, see "Cleanup" in Mail::Box::Locker
132
134 Warning: Folder $folder already flocked
135 The folder is already locked, but you attempt to lock it again.
136 The behavior of double flock's is platform dependent, and therefore
137 should not be attempted. The second lock is ignored (but the
138 unlock isn't)
139
140 Error: Package $package does not implement $method.
141 Fatal error: the specific package (or one of its superclasses) does
142 not implement this method where it should. This message means that
143 some other related classes do implement this method however the
144 class at hand does not. Probably you should investigate this and
145 probably inform the author of the package.
146
147 Error: Unable to check lock file $filename for $folder: $!
148 To check whether the filename is used to flock a folder, the file
149 must be opened. Apparently this fails, which does not mean that
150 the folder is locked neither that it is unlocked.
151
152 Error: Unable to open flock file $filename for $folder: $!
153 For flock-ing a folder it must be opened, which does not succeed
154 for the specified reason.
155
156 Error: Will never get a flock at $filename for $folder: $!
157 Tried to flock the folder, but it did not succeed. The error code
158 received from the OS indicates that it will not succeed ever, so we
159 do not need to try again.
160
162 This module is part of Mail-Box distribution version 3.010, built on
163 July 18, 2023. Website: http://perl.overmeer.net/CPAN/
164
166 Copyrights 2001-2023 by [Mark Overmeer]. For other contributors see
167 ChangeLog.
168
169 This program is free software; you can redistribute it and/or modify it
170 under the same terms as Perl itself. See http://dev.perl.org/licenses/
171
172
173
174perl v5.38.0 2023-07-24 Mail::Box::Locker::Flock(3)