---
name: "plockstat"
section: "1"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd", "macos"]
url: "https://new.carta.tech/plockstat"
---

# plockstat(1)

Trace pthread lock statistics using DTrace

## NAME

**plockstat** – Trace pthread lock statistics using DTrace

## SYNOPSIS

**plockstat** \[**-vACHV**\] \[**-n** *count*\] \[**-s** *depth*\] \[**-e** *secs*\] \[**-x** *opt*=*val*\] *command* \[arg...\]

**plockstat** \[**-vACHV**\] \[**-n** *count*\] \[**-s** *depth*\] \[**-e** *secs*\] \[**-x** *opt*=*val*\] **-p** *pid*

## DESCRIPTION

The **plockstat** utility traces pthread locks (mutexes and rwlocks) and prints statistics about them. You can use **plockstat** to investigate bottlenecks in your software.

The following options are available:

- **-v**

  Be verbose.

- **-A**

  Print all statistics.

- **-C**

  Print commulative statistics (the default).

- **-H**

  Print a histogram.

- **-V**

  Print the DTrace script about to be used to stderr.

- **-n** *count*

  Set the aggregation count for the data set.

- **-s** *depth*

  Set the ustack (userland stack) caller depth.

- **-e** *secs*

  Does nothing at the moment.

- **-x** *opt*=*val*

  Specify DTrace options. See the [dtrace(1)](/dtrace/1.md) man page for more details.

## EXIT STATUS

The **plockstat** utility exits 0 on success, and \>0 if an error occurs.

## SEE ALSO

[dtrace(1)](/dtrace/1.md), [pthread(3)](/pthread/3.md)

## HISTORY

The **plockstat** utility comes from OpenSolaris and was first imported into FreeBSD 9.0.
