---
title: "makeMachSendSource(port:eventMask:queue:)"
framework: dispatch
role: symbol
role_heading: Type Method
path: "dispatch/dispatchsource/makemachsendsource(port:eventmask:queue:)"
---

# makeMachSendSource(port:eventMask:queue:)

A dispatch source that monitors a Mach port for dead name notifications.

## Declaration

```swift
class func makeMachSendSource(port: mach_port_t, eventMask: DispatchSource.MachSendEvent, queue: DispatchQueue? = nil) -> any DispatchSourceMachSend
```

## Parameters

- `port`: A Mach port with a send or send-once right.
- `eventMask`: The events you want to monitor. For a list of possible values, see doc://com.apple.dispatch/documentation/Dispatch/DispatchSource/MachSendEvent.
- `queue`: The dispatch queue to use when executing the installed handlers.

## Return Value

Return Value A dispatch source object that conforms to the DispatchSourceMachSend protocol.

## Discussion

Discussion After creating the dispatch source, use the methods of the DispatchSourceProtocol protocol to install the event handlers you need. The returned dispatch source is in the inactive state initially. When you are ready to begin processing events, call its activate() method.

## See Also

### Creating a Mach Port Source

- [makeMachReceiveSource(port:queue:)](dispatch/dispatchsource/makemachreceivesource(port:queue:).md)
- [DispatchSourceMachReceive](dispatch/dispatchsourcemachreceive.md)
- [DispatchSourceMachSend](dispatch/dispatchsourcemachsend.md)
- [DispatchSource.MachSendEvent](dispatch/dispatchsource/machsendevent.md)
