<!--
{
  "availability" : [
    "iOS: 7.0.0 -",
    "iPadOS: 7.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.9.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/Progress/becomeCurrent(withPendingUnitCount:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:objc(cs)NSProgress(im)becomeCurrentWithPendingUnitCount:"
  },
  "title" : "becomeCurrent(withPendingUnitCount:)"
}
-->

# becomeCurrent(withPendingUnitCount:)

Sets the progress object as the current object of the current thread, and assigns the amount of work for the next suboperation progress object to perform.

```
func becomeCurrent(withPendingUnitCount unitCount: Int64)
```

## Parameters

`unitCount`

The number of units of work for the next progress object that initializes when you invoke [`init(parent:userInfo:)`](/documentation/Foundation/Progress/init(parent:userInfo:)) in the current thread with this progress object as the containing progress object.

    The number represents the portion of work to perform in relation to the total number of units of work, which is the value of the progress object’s [`totalUnitCount`](/documentation/Foundation/Progress/totalUnitCount)     property. The units of work for this parameter must be the same units of work in the progress object’s [`totalUnitCount`](/documentation/Foundation/Progress/totalUnitCount)     property.

## Discussion

Use this method to build a tree of progress objects, as [`Reporting Progress for Multiple Operations`](/documentation/Foundation/Progress#Reporting-Progress-for-Multiple-Operations) describes.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)