object Cluster extends Object with Cluster
Cluster Singleton
- Annotations
- @native() @JSImport("cluster", JSImport.Namespace)
- Alphabetic
- By Inheritance
- Cluster
- Cluster
- IEventEmitter
- Object
- Any
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val SCHED_NONE: Int
- Definition Classes
- Cluster
- val SCHED_RR: Int
- Definition Classes
- Cluster
- def addListener(eventName: String, listener: Function): Cluster.this.type
Alias for emitter.on(eventName, listener).
Alias for emitter.on(eventName, listener).
- Definition Classes
- IEventEmitter
emitter.addListener(eventName, listener)
- See also
on()
Example: - final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def disconnect(): Unit
- Definition Classes
- Cluster
- def disconnect(callback: Function): Unit
When they are disconnected all internal handles will be closed, allowing the master process to die gracefully if no other event is waiting.
When they are disconnected all internal handles will be closed, allowing the master process to die gracefully if no other event is waiting.
The method takes an optional callback argument which will be called when finished.
This can only be called from the master process.
- Definition Classes
- Cluster
cluster.disconnect([callback])
Example: - val domain: Domain
- Definition Classes
- IEventEmitter
- def emit(name: String, args: Any*): Boolean
Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments to each.
Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments to each.
Returns true if the event had listeners, false otherwise.
- name
the event name
- args
the event arguments
- Definition Classes
- IEventEmitter
emitter.emit(name[, arg1][, arg2][, ...])
Example: - final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def eventNames(): Array[String]
- Definition Classes
- IEventEmitter
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def fork(): Worker
- Definition Classes
- Cluster
- def fork(env: Any): Worker
Spawn a new worker process.
Spawn a new worker process. This can only be called from the master process.
- returns
a new worker
- Definition Classes
- Cluster
cluster.fork([env])
Example: - final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getMaxListeners(): Int
Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners.
Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners.
- Definition Classes
- IEventEmitter
emitter.getMaxListeners()
- See also
setMaxListeners()
Example: - def hasOwnProperty(v: String): Boolean
- Definition Classes
- Object
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isMaster: Boolean
True if the process is a master.
True if the process is a master. This is determined by the process.env.NODE_UNIQUE_ID. If process.env.NODE_UNIQUE_ID is undefined, then isMaster is true.
- Definition Classes
- Cluster
- def isPrototypeOf(v: Object): Boolean
- Definition Classes
- Object
- def isWorker: Boolean
True if the process is not a master (it is the negation of cluster.isMaster).
True if the process is not a master (it is the negation of cluster.isMaster).
- Definition Classes
- Cluster
- def listenerCount(eventName: String): Int
Returns the number of listeners listening to the event named eventName.
Returns the number of listeners listening to the event named eventName.
- Definition Classes
- IEventEmitter
emitter.listenerCount(eventName)
Example: - def listeners(eventName: String): Array[Function]
Returns a copy of the array of listeners for the event named eventName.
Returns a copy of the array of listeners for the event named eventName.
- Definition Classes
- IEventEmitter
emitter.listeners(eventName)
Example: - final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def off(eventName: String, listner: Function): Cluster.this.type
- Definition Classes
- IEventEmitter
- def on(eventName: String, listener: Function): Cluster.this.type
Adds the listener function to the end of the listeners array for the event named eventName.
Adds the listener function to the end of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.
Returns a reference to the EventEmitter so calls can be chained.
- Definition Classes
- IEventEmitter
emitter.on(eventName, listener)
Example: - def once(eventName: String, listener: Function): Cluster.this.type
Adds a one time listener function for the event named eventName.
Adds a one time listener function for the event named eventName. This listener is invoked only the next time eventName is triggered, after which it is removed.
- Definition Classes
- IEventEmitter
emitter.once(eventName, listener)
Example: - def prependListener(eventName: String, listener: Function): Cluster.this.type
- Definition Classes
- IEventEmitter
- def prependOnceListener(eventName: String, listener: Function): Cluster.this.type
- Definition Classes
- IEventEmitter
- def propertyIsEnumerable(v: String): Boolean
- Definition Classes
- Object
- def rawListeners(eventName: String): Array[Function]
- Definition Classes
- IEventEmitter
- def removeAllListeners(): Cluster.this.type
- Definition Classes
- IEventEmitter
- def removeAllListeners(eventName: String): Cluster.this.type
Removes all listeners, or those of the specified eventName.
Removes all listeners, or those of the specified eventName.
Note that it is bad practice to remove listeners added elsewhere in the code, particularly when the EventEmitter instance was created by some other component or module (e.g. sockets or file streams).
Returns a reference to the EventEmitter so calls can be chained.
- Definition Classes
- IEventEmitter
emitter.removeAllListeners([eventName])
Example: - def removeListener(eventName: String, listener: Function): Cluster.this.type
Removes the specified listener from the listener array for the event named eventName.
Removes the specified listener from the listener array for the event named eventName. removeListener will remove, at most, one instance of a listener from the listener array. If any single listener has been added multiple times to the listener array for the specified eventName, then removeListener must be called multiple times to remove each instance.
Note that once an event has been emitted, all listeners attached to it at the time of emitting will be called in order. This implies that any removeListener() or removeAllListeners() calls after emitting and before the last listener finishes execution will not remove them from emit() in progress. Subsequent events will behave as expected.
- Definition Classes
- IEventEmitter
emitter.removeListener(eventName, listener)
Example: - def schedulingPolicy: Int
The scheduling policy, either cluster.SCHED_RR for round-robin or cluster.SCHED_NONE to leave it to the operating system.
The scheduling policy, either cluster.SCHED_RR for round-robin or cluster.SCHED_NONE to leave it to the operating system. This is a global setting and effectively frozen once you spawn the first worker or call cluster.setupMaster(), whatever comes first.
SCHED_RR is the default on all operating systems except Windows. Windows will change to SCHED_RR once libuv is able to effectively distribute IOCP handles without incurring a large performance hit.
cluster.schedulingPolicy can also be set through the NODE_CLUSTER_SCHED_POLICY environment variable. Valid values are "rr" and "none".
- Definition Classes
- Cluster
- def setMaxListeners(n: Int): Cluster.this.type
By default EventEmitters will print a warning if more than 10 listeners are added for a particular event.
By default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default that helps finding memory leaks. Obviously, not all events should be limited to just 10 listeners. The emitter.setMaxListeners() method allows the limit to be modified for this specific EventEmitter instance. The value can be set to Infinity (or 0) for to indicate an unlimited number of listeners.
Returns a reference to the EventEmitter so calls can be chained.
- Definition Classes
- IEventEmitter
emitter.setMaxListeners(n)
Example: - def settings: ClusterSettings
After calling .setupMaster() (or .fork()) this settings object will contain the settings, including the default values.
After calling .setupMaster() (or .fork()) this settings object will contain the settings, including the default values. It is effectively frozen after being set, because .setupMaster() can only be called once. This object is not supposed to be changed or set manually, by you.
- Definition Classes
- Cluster
- def setupMaster(settings: ClusterSettings): Unit
setupMaster is used to change the default 'fork' behavior.
setupMaster is used to change the default 'fork' behavior. Once called, the settings will be present in cluster.settings. Note that:
- any settings changes only affect future calls to .fork() and have no effect on workers that are already running
- The only attribute of a worker that cannot be set via .setupMaster() is the env passed to .fork()
- the defaults above apply to the first call only, the defaults for later calls is the current value at the time of cluster.setupMaster() is called
- Definition Classes
- Cluster
cluster.setupMaster([settings])
Example: - final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toLocaleString(): String
- Definition Classes
- Object
- def toString(): String
- Definition Classes
- AnyRef → Any
- def valueOf(): Any
- Definition Classes
- Object
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def worker: Worker
A reference to the current worker object.
A reference to the current worker object. Not available in the master process.
- Definition Classes
- Cluster
- def workers: Dictionary[Worker]
A hash that stores the active worker objects, keyed by id field.
A hash that stores the active worker objects, keyed by id field. Makes it easy to loop through all the workers. It is only available in the master process.
A worker is removed from cluster.workers after the worker has disconnected and exited. The order between these two events cannot be determined in advance. However, it is guaranteed that the removal from the cluster.workers list happens before last 'disconnect' or 'exit' event is emitted.
- Definition Classes
- Cluster