3860N/A<!-- $LastChangedRevision$ --> 3860N/A Copyright 2002-2004 The Apache Software Foundation 3860N/A Licensed under the Apache License, Version 2.0 (the "License"); 3860N/A you may not use this file except in compliance with the License. 3860N/A You may obtain a copy of the License at 3860N/A Unless required by applicable law or agreed to in writing, software 3860N/A distributed under the License is distributed on an "AS IS" BASIS, 3860N/A WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3860N/A See the License for the specific language governing permissions and 3860N/A limitations under the License. 3860N/A<
description>An experimental variant of the standard <
module>worker</
module>
3860N/A<
identifier>mpm_leader_module</
identifier>
3860N/A <
note type="warning"><
title>Warning</
title>
3860N/A <
p>This MPM is experimental, so it may or may not work
3860N/A <
p>This is an experimental variant of the standard
3860N/A to coordinate work among threads. For more info, see <
a 3860N/A <
p>To use the <
module>leader</
module> MPM, add
3860N/A <
code>--with-mpm=leader</
code> to the <
program>configure</
program>
3860N/A script's arguments when building the <
program>httpd</
program>.</
p>
3860N/A <
p>This MPM depends on APR's atomic compare-and-swap operations for
4103N/A thread synchronization. If you are compiling for an x86 target
4103N/A and you don't need to support 386s, or you are compiling for a
4103N/A SPARC and you don't need to run on pre-UltraSPARC chips, add
3860N/A <
code>--enable-nonportable-atomics=yes</
code> to the
3860N/A <
program>configure</
program> script's arguments. This will cause
3860N/A APR to implement atomic operations
3860N/A using efficient opcodes not available in older CPUs.</
p>
3860N/A<
directivesynopsis location="mpm_common"><
name>AcceptMutex</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>CoreDumpDirectory</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>EnableExceptionHook</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>Group</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>Listen</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>ListenBacklog</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>SendBufferSize</
name>
3914N/A<
directivesynopsis location="mpm_common"><
name>LockFile</
name>
3972N/A<
directivesynopsis location="mpm_common"><
name>MaxClients</
name>
3914N/A<
directivesynopsis location="mpm_common"><
name>MaxMemFree</
name>
3972N/A<
directivesynopsis location="mpm_common"><
name>MaxRequestsPerChild</
name>
3972N/A<
directivesynopsis location="mpm_common"><
name>MaxSpareThreads</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>MinSpareThreads</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>PidFile</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>ScoreBoardFile</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>ServerLimit</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>StartServers</
name>
3972N/A<
directivesynopsis location="mpm_common"><
name>ThreadLimit</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>ThreadsPerChild</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>ThreadStackSize</
name>
3860N/A<
directivesynopsis location="mpm_common"><
name>User</
name>