Synchronization

## Macros

#define | __itt_attr_barrier 1
| possible value of attribute argument for sync object type More...
#define | __itt_attr_mutex 2
| possible value of attribute argument for sync object type More...
#define | __itt_sync_create __itt_sync_createA
#define | __itt_sync_create_ptr __itt_sync_createA_ptr
#define | __itt_sync_rename __itt_sync_renameA
#define | __itt_sync_rename_ptr __itt_sync_renameA_ptr

## Functions

void ITTAPI | __itt_sync_createA (void *addr, const char *objtype, const char *objname, int attribute)
| Name a synchronization object. More...
void ITTAPI | __itt_sync_createW (void *addr, const wchar_t *objtype, const wchar_t *objname, int attribute)
void ITTAPI | __itt_sync_renameA (void *addr, const char *name)
| Rename a synchronization object. More...
void ITTAPI | __itt_sync_renameW (void *addr, const wchar_t *name)
void ITTAPI | __itt_sync_destroy (void *addr)
| Destroy a synchronization object. More...

## group of functions is used for performance measurement tools

void ITTAPI | __itt_sync_prepare (void *addr)
| Enter spin loop on user-defined sync object. More...
void ITTAPI | __itt_sync_cancel (void *addr)
| Quit spin loop without acquiring spin object. More...
void ITTAPI | __itt_sync_acquired (void *addr)
| Successful spin loop completion (sync object acquired) More...
void ITTAPI | __itt_sync_releasing (void *addr)
| Start sync object releasing code. Is called before the lock release call. More...

## Detailed Description

Indicate user-written synchronization code

## Macro Definition Documentation

## __itt_attr_barrier

#define __itt_attr_barrier 1

possible value of attribute argument for sync object type

Definition at line 646 of file ittnotify.h.

## __itt_attr_mutex

#define __itt_attr_mutex 2

possible value of attribute argument for sync object type

Definition at line 652 of file ittnotify.h.

## __itt_sync_create

#define __itt_sync_create __itt_sync_createA

Definition at line 672 of file ittnotify.h.

## __itt_sync_create_ptr

#define __itt_sync_create_ptr __itt_sync_createA_ptr

Definition at line 673 of file ittnotify.h.

## __itt_sync_rename

#define __itt_sync_rename __itt_sync_renameA

Definition at line 733 of file ittnotify.h.

## __itt_sync_rename_ptr

#define __itt_sync_rename_ptr __itt_sync_renameA_ptr

Definition at line 734 of file ittnotify.h.

## Function Documentation

## __itt_sync_acquired()

void ITTAPI __itt_sync_acquired | ( | void * | addr | ) |

Successful spin loop completion (sync object acquired)

## __itt_sync_cancel()

void ITTAPI __itt_sync_cancel | ( | void * | addr | ) |

Quit spin loop without acquiring spin object.

## __itt_sync_createA()

void ITTAPI __itt_sync_createA | ( | void * | addr,
|  | const char * | objtype,
|  | const char * | objname,
|  | int | attribute
| ) |  |

Name a synchronization object.

Parameters

  [in] | addr | Handle for the synchronization object. You should use a real address to uniquely identify the synchronization object.
  [in] | objtype | null-terminated object type string. If NULL is passed, the name will be "User Synchronization".
  [in] | objname | null-terminated object name string. If NULL, no name will be assigned to the object.
  [in] | attribute | one of [__itt_attr_barrier, __itt_attr_mutex]

## __itt_sync_createW()

void ITTAPI __itt_sync_createW | ( | void * | addr,
|  | const wchar_t * | objtype,
|  | const wchar_t * | objname,
|  | int | attribute
| ) |  |

## __itt_sync_destroy()

void ITTAPI __itt_sync_destroy | ( | void * | addr | ) |

Destroy a synchronization object.

Parameters

  addr | Handle for the synchronization object.

## __itt_sync_prepare()

void ITTAPI __itt_sync_prepare | ( | void * | addr | ) |

Enter spin loop on user-defined sync object.

## __itt_sync_releasing()

void ITTAPI __itt_sync_releasing | ( | void * | addr | ) |

Start sync object releasing code. Is called before the lock release call.

## __itt_sync_renameA()

void ITTAPI __itt_sync_renameA | ( | void * | addr,
|  | const char * | name
| ) |  |

Rename a synchronization object.

You can use the rename call to assign or reassign a name to a given synchronization object.

Parameters

  [in] | addr | handle for the synchronization object.
  [in] | name | null-terminated object name string.

## __itt_sync_renameW()

void ITTAPI __itt_sync_renameW | ( | void * | addr,
|  | const wchar_t * | name
| ) |  |

Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.