source: trunk/man/arm_stop_transaction.3 @ 704

Revision 614, 3.8 KB checked in by dcarter, 4 years ago (diff)

see #111 - Build beta3

Line 
1.\" Copyright (c) 2005-2008 David Carter <dcarter@arm4.org> and others.
2.\" All rights reserved.   This program and the accompanying materials
3.\" are made available under the terms of the Eclipse Public License v1.0
4.\" which accompanies this distribution, and is available at
5.\" http://www.eclipse.org/legal/epl-v10.html
6.TH "arm_stop_transaction" 3 "August 2008" "arm4.org" "ARM 4 Programmer's Manual"
7.SH NAME
8arm_stop_transaction \- stop transaction
9.SH SYNOPSIS
10.B #include <arm4.h>
11.sp
12\fBarm_error_t
13.br
14arm_stop_transaction(
15.br
16    const arm_tran_start_handle_t \fItran_handle\fB,
17.br
18    const arm_tran_status_t \fItran_status\fB,
19.br
20    const arm_int32_t \fIflags\fB,
21.br
22    const arm_buffer4_t *\fIbuffer4\fB);\fR
23.SH DESCRIPTION
24\fBarm_stop_transaction()\fR signals the end of a transaction.
25 
26Call \fBarm_stop_transaction()\fR just after a transaction completes. \fBarm_start_transaction()\fR signals
27the ARM library to start timing the transaction response time. \fBarm_stop_transaction()\fR signals
28the ARM library to stop timing the transaction response time. It can be called from any thread in
29the process that executed the \fBarm_start_transaction()\fR.
30 
31Implicit \fBarm_unbind_thread()\fR and \fBarm_unblock_transaction()\fR calls are made for any pending
32\fBarm_bind_thread()\fR and \fBarm_block_transaction()\fR calls, respectively, that have not been
33explicitly unbound or unblocked with \fBarm_unbind_thread()\fR and \fBarm_unblock_transaction()\fR.
34
35\fIbuffer4\fR is a pointer to the user data buffer, if any. If the pointer is null (\fBARM_BUF4_NONE\fR),
36there is no buffer. The sub-buffers that may be used are
37\fBarm_subbuffer_diag_detail_t\fR and \fBarm_subbuffer_metric_values_t\fR.
38 
39\fIflags\fR contains 32-bit flags. No values are currently defined. The field should be zero
40(\fBARM_FLAG_NONE\fR).
41
42\fItran_handle\fR is a handle returned in an out parameter from an \fBarm_start_transaction()\fR call in the
43same process.
44
45\fItran_status\fR indicates the status of the transaction. The following values are allowed:
46 
47.IP 0
48(\fBARM_STATUS_GOOD\fR) = transaction completed successfully
49.IP 1
50(\fBARM_STATUS_ABORTED\fR) = transaction was aborted before it completed. For
51example, the user might have pressed "Stop" or "Back" on a browser while a
52transaction was in process, causing the transaction, as measured at the browser, to
53be aborted.
54.IP 2
55(\fBARM_STATUS_FAILED\fR) = transaction completed in error
56.IP 3
57(\fBARM_STATUS_UNKNOWN\fR) = transaction completed but the status was
58unknown. This would most likely occur if middleware or some other form of proxy
59instrumentation measured the transaction. This instrumentation may know enough
60to know when the transaction starts and stops, but does not understand the
61application-specific semantics sufficiently well to know whether the transaction
62was successful.
63.SH "RETURN VALUE"
64On success, the function returns \fBARM_SUCCESS\fR. A non-zero value indicates
65an error.
66.SH ERRORS
67If the return code is negative, an error occurred. If the return code is not negative, an error may
68or may not have occurred - the determination of what is an error and whether an error code is
69returned is at the discretion of the ARM implementation. The application can test the return code
70if it wants to provide its own error logging.
71
72The following errors are recognized by this implementation, but may not be portable to other implementations:
73
74.TP
75.B ARM_FAILURE_INTERNAL_ERROR
76An internal error has occurred that prevented the operation from completing. Check your
77system log for more details.
78.SH "CONFORMING TO"
79ARM Issue 4.0 C Language Bindings, Version 2
80.SH EXAMPLE
81None.
82.SH "SEE ALSO"
83.BR arm_bind_thread (3),
84.BR arm_block_transaction (3),
85.BR arm_start_transaction (3),
86.BR arm_unbind_thread (3),
87.BR arm_unblock_transaction (3)
Note: See TracBrowser for help on using the repository browser.