# Actor

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Model](https://rapi.sleaze.dev/classes/Model.md), [PVInstance](https://rapi.sleaze.dev/classes/PVInstance.md), [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Memory category: BaseParts
- HTML page: https://rapi.sleaze.dev/classes/Actor/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/Actor

An [`Actor`](https://rapi.sleaze.dev/classes/Actor.md) is a container for code that can be safely split into its own thread.

## Methods

### BindToMessage

```luau
Actor:BindToMessage(topic: string, function: (...any) -> ...any): RBXScriptConnection
```

- Tags: Thread safe, Capabilities: Basic

Binds a Luau callback to a message with the specified topic.

Parameters:

- `topic`: The topic used to identify the type of message.
- `function`: The Luau callback to invoke when a message with the specified topic is received. The callback receives the message contents as its arguments.

Returns: This connection object may be used to disconnect the Luau callback from receiving messages.

### BindToMessageParallel

```luau
Actor:BindToMessageParallel(topic: string, function: (...any) -> ...any): RBXScriptConnection
```

- Tags: Thread safe, Capabilities: Basic

Binds a Luau callback to a message with the specified topic.

Parameters:

- `topic`: The topic used to identify the type of message.
- `function`: The Luau callback to invoke when a message with the specified topic is received. The callback receives the message contents as its arguments.

Returns: This connection object may be used to disconnect the Luau callback from receiving messages.

### SendMessage

```luau
Actor:SendMessage(topic: string, ...: any)
```

- Tags: Thread safe, Capabilities: Basic

Sends a message to an Actor.

Parameters:

- `topic`: The topic used to identify the message being sent.
- `message`: The contents of the message to send to the Actor.

## Inherited members

- From [Model](https://rapi.sleaze.dev/classes/Model.md): `LevelOfDetail`, `ModelStreamingMode`, `LodEntity`, `ModelMeshCFrame`, `ModelMeshData`, `ModelMeshSize`, `NeedsPivotMigration`, `SlimAnimationTarget`, `SlimHash`, `PrimaryPart`, `Scale`, `ScaleFactor`, `WorldPivot`, `WorldPivotData`, `AddPersistentPlayer`, `GetBoundingBox`, `GetExtentsSize`, `GetPersistentPlayers`, `GetScale`, `MoveTo`, `RemovePersistentPlayer`, `ScaleTo`, `TranslateBy`, `BreakJoints`, `GetModelCFrame`, `GetModelSize`, `GetPrimaryPartCFrame`, `MakeJoints`, `ResetOrientationToIdentity`, `SetIdentityOrientation`, `SetPrimaryPartCFrame`, `breakJoints`, `makeJoints`, `move`, `moveTo`
- From [PVInstance](https://rapi.sleaze.dev/classes/PVInstance.md): `Pivot Offset`, `Origin`, `GetPivot`, `PivotTo`
- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
