Guides and Sample Code

Developer

Instruments User Guide

On This Page

File Locks Instrument

Overview

Instrument Description

The File Locks instrument captures information on advisory file-locking operations that use the flock function call. It can record information from a single process or from all processes running on the system. This instrument uses DTrace in its implementation and can be exported to a DTrace script.

Supported Platforms

OS X

Related Profiling Templates

N/A

Timeline Pane

The timeline pane displays the following information, based on the instrument’s configuration:

Statistic name

Definition

Thread ID (tid)

The thread identifier.

Stack Depth

The depth of the stack when the operation was performed.

Operation

The integer representation of the operation.

Record Settings

Click the Record Settings button (image: ../Art/instruments_recordsettings_button_inline_2x.png) in the inspector pane to customize the following recording options.

Select statistics to list

Select the statistics to be displayed in the Statistics to Graph area.

Display Settings

Click the Display Settings button (image: ../Art/instruments_displaysettings_button_inline_2x.png) in the inspector pane to customize the following display settings.

Track Display Settings

These settings control how information is displayed in the timeline pane.

Setting

Description

Options

Style

How information is presented.

  • Block Graph: Information is presented as a horizontal line until the information changes. The area under the line is filled by the statistic’s designated color.

  • Peak Graph: Maximum value for the information is displayed. Lines are in the statistic’s designated color.

Statistics to Graph

Select a statistic to see it graphed in the timeline pane. Click the shape or the color well to change how a statistic is represented.

Call Tree

The following call tree display settings filter the call tree in the detail pane.

Setting

State

Separate by Thread

Off by default.

Invert Call Tree

Off by default.

Hide System Libraries

Off by default.

Flatten Recursion

Off by default.

Call Tree Constraints

The following options filter the call tree to display calls that fall within a specific threshold based on the settings below.

Setting

State

# Calls

Off by default.

Data Mining

Allows you to filter through the collected data for specific symbols and libraries.

Detail Pane Columns

Event List Detail Type

The following event list columns are available in the detail pane.

Column name

Definition

#

The sequence number of the event.

Caller

Caller of the performed action.

Function

The type of function that was performed.

Process ID

The process identifier.

Operation

The integer representation of the operation.

  • 1: Shared lock

  • 2: Exclusive lock

  • 4: Don’t block when locking

  • 8: Unlock

Path

The path to the file on which the executable performed the operation.

Call Tree Detail Type

The following call tree columns are available in the detail pane.

Column name

Definition

# Self

The number of times the symbol has been called.

% Calls

The percentage of total calls involving the symbol name.

# Calls

The number of calls involving the symbol name.

% of Parent

The percentage of bytes used by the call’s parent.

Source Path

The path to the source file that generated the call.

Category

An icon representing the category of the call.

Library

The name of the library that generated the call.

Symbol Name

The name of the symbol being called.