---
title: "init(upstream:scheduler:options:)"
framework: combine
role: symbol
role_heading: Initializer
path: "combine/publishers/receiveon/init(upstream:scheduler:options:)"
---

# init(upstream:scheduler:options:)

Creates a publisher that delivers elements to its downstream subscriber on a specific scheduler.

## Declaration

```swift
init(upstream: Upstream, scheduler: Context, options: Context.SchedulerOptions?)
```

## Parameters

- `upstream`: The publisher from which this publisher receives elements.
- `scheduler`: The scheduler the publisher uses to deliver elements.
- `options`: Scheduler options used to customize element delivery.
