Skip to content

Actor

Not yet Class Other

An Actor is a container for code that can be safely split into its own thread.

Not implemented yet

This class exists in the current Roblox API but is not implemented in Nova yet. Scripts that reference it will fail at runtime.

0 Nova members · 9 modern Roblox members not implemented yet

Description

An Actor is a container for code that can be safely split into its own thread using task.desynchronize(). It should also contain the instances used by its scripts.

To learn more about using multiple Actors to optimize script performance, see Parallel Luau.

Notes

  • Each Actor runs in its own Luau VM. ModuleScripts required by an Actor are not shared or cached across Actors or with the main thread. Each VM executes its own copy of the module, so module-level state is isolated per Actor. Design accordingly if your modules hold state you intend to share.
  • script:GetActor() returns nil when called from a ModuleScript unless the ModuleScript is a descendant of the Actor. ModuleScripts stored elsewhere (for example, ReplicatedStorage) and required by an Actor are not considered descendants of the Actor.

Inheritance

Object → Instance → PVInstance → Model → Actor

Methods

Member Signature Summary
BindToMessage Actor:BindToMessage(topic: string, function: Function): RBXScriptConnection Binds a Luau callback to a message with the specified topic.
BindToMessageParallel Actor:BindToMessageParallel(topic: string, function: Function): RBXScriptConnection Binds a Luau callback to a message with the specified topic.
SendMessage Actor:SendMessage(topic: string, message: Tuple): null Sends a message to an Actor.

Roblox reference: Actor

Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.