![]() |
![]() |
![]() |
![]() |
bt_init_accessor()
Initialize a backtrace accessor
![]() |
The backtrace library is an unsupported feature, due to its fragility. For more information, see Backtraces in the QNX Neutrino technotes. |
Synopsis:
#include <backtrace.h>
int bt_init_accessor( bt_accessor_t *acc,
bt_acc_type_t type, ...);
Arguments:
- acc
- A pointer to a bt_accessor_t structure. This is an opaque structure that holds the identity of the thread to backtrace.
- type
- The type of backtrace to perform; one of:
- BT_SELF — backtrace the calling thread.
- BT_THREAD — backtrace a specified thread in the current process.
- BT_PROCESS — backtrace a specified thread in another process.
Additional arguments are required for BT_THREAD and BT_PROCESS, as described below.
Library:
libbacktrace
Use the -l backtrace option to qcc to link against this library.
Description:
The bt_init_accessor() function initializes the accessor with the identity of the thread to backtrace:
- To backtrace the calling thread, use:
bt_init_accessor(bt_accessor_t *acc, BT_SELF);
- To backtrace a thread in the current process, use:
bt_init_accessor(bt_accessor_t *acc, BT_THREAD, pthread_t tid);
- To backtrace a thread in any process, use:
bt_init_accessor(bt_accessor_t *acc, BT_PROCESS, pid_t pid, pthread_t tid)
![]() |
The bt_acc_self global variable is a preinitialized accessor used to backtrace the current thread. Don't call bt_init_accessor() or bt_release_accessor() for this variable. |
Returns:
- 0
- Success.
- -1
- An error occurred (errno is set).
Errors:
- EINVAL
- The acc argument is NULL, or the type is invalid.
Classification:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
See also:
bt_get_backtrace(), bt_load_memmap(), bt_release_accessor(), bt_set_flags(), bt_sprn_memmap(), bt_sprnf_addrs(), bt_translate_addrs(), bt_unload_memmap()
Backtraces in the QNX Neutrino technotes
pidin backtrace in the Utilities Reference
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)
