# zx::job

## Summary

### Inheritance

Inherits from: [zx::task\< job \>](https://fuchsia.dev/reference/cpp/class/zx/task)

| ### Constructors and Destructors ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a16029a424f59b7e44c6a0e8f673ba31f()` ||
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a7d01ea51514ed3780b7066c972a26cd5(zx_handle_t value)` ||
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1ad3eb602452752ebc6abafb6b8aaf375c(https://fuchsia.dev/reference/cpp/class/zx/object#classzx_1_1object && h)` ||
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a12845b4a778ac3c0ce517958c8da1b05(https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job && other)` ||

| ### Public static attributes ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a0bd9e10f2ab897514ee636156f08fa3f = ZX_OBJ_TYPE_JOB` | `constexpr zx_obj_type_t` |

| ### Public functions ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a2f25aacf58fc40909592c232dcc51ecb(uint64_t koid, zx_rights_t rights, https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job *result)` | `zx_status_t` |
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a9ba92cb447ff336956731edf5ba9967e(uint64_t koid, zx_rights_t rights, https://fuchsia.dev/reference/cpp/class/zx/process#classzx_1_1process *result)` | `zx_status_t` |
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a15616dcd874cb8139dce1b69914814f4(https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job && other)` | `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job &` |
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a3551878498f9feeabe4f24ca1a20e3b3(uint32_t options, const https://fuchsia.dev/reference/cpp/class/zx/process#classzx_1_1process & process)` | `zx_status_t` |
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a5a2f34e5359fe8c92be1f2ffd3adb06d(uint32_t options, uint32_t topic, const void *policy, uint32_t count)` | `zx_status_t` |

| ### Public static functions ||
|---|---|
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1a4784cbfdaef2674ac585c758da05026f(const https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job & parent, uint32_t options, https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job *result)` | `zx_status_t` |
| `https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job_1abb11975153218e280c7c6f82a39185c6()` | `https://fuchsia.dev/reference/cpp/other/singletonzx/unowned#singletonzx_1_1unowned< https://fuchsia.dev/reference/cpp/class/zx/job#classzx_1_1job >` |

## Public static attributes

### TYPE

```c++
constexpr zx_obj_type_t TYPE = ZX_OBJ_TYPE_JOB
```

## Public functions

### get_child

```c++
zx_status_t get_child(
  uint64_t koid,
  zx_rights_t rights,
  job *result
)
```

### get_child

```c++
zx_status_t get_child(
  uint64_t koid,
  zx_rights_t rights,
  process *result
)
```

### job

```c++
constexpr job()=default
```

### job

```c++
 job(
  zx_handle_t value
)
```

### job

```c++
 job(
  handle && h
)
```

### job

```c++
 job(
  job && other
)
```

### operator=

```c++
job & operator=(
  job && other
)
```

### set_critical

```c++
zx_status_t set_critical(
  uint32_t options,
  const zx::process & process
)
```

### set_policy

```c++
zx_status_t set_policy(
  uint32_t options,
  uint32_t topic,
  const void *policy,
  uint32_t count
)
```

## Public static functions

### create

```c++
zx_status_t create(
  const zx::job & parent,
  uint32_t options,
  job *result
)
```

### default_job

```c++
unowned< job > default_job()
```