Wait Instrument Components
An instrumented I/O operation.
An instrumented file I/O operation. For files, the wait is the time waiting for the file operation to
complete (for example, a call to fwrite()). Due to caching, the physical file I/O on the disk might
not happen within this call.
An instrumented socket operation. Socket instruments have names of the form wait/io/
socket/sql/socket_type. The server has a listening socket for each network protocol that
it supports. The instruments associated with listening sockets for TCP/IP or Unix socket file
connections have a socket_type value of server_tcpip_socket or server_unix_socket,
respectively. When a listening socket detects a connection, the server transfers the connection to
a new socket managed by a separate thread. The instrument for the new connection thread has a
socket_type value of client_connection.
An instrumented table I/O operation. These include row-level accesses to persistent base tables
or temporary tables. Operations that affect rows are fetch, insert, update, and delete. For a view,
waits are associated with base tables referenced by the view.
Unlike most waits, a table I/O wait can include other waits. For example, table I/O might include file
I/O or memory operations. Thus, events_waits_current for a table I/O wait usually has two
rows. For more information, see Section 21.6, “Performance Schema Atom and Molecule Events”.
Some row operations might cause multiple table I/O waits. For example, an insert might activate a
trigger that causes an update.
An instrumented lock operation.
An instrumented table lock operation.
An instrumented synchronization object. For synchronization objects, the TIMER_WAIT time includes
the amount of time blocked while attempting to acquire a lock on the object, if any.
A condition is used by one thread to signal to other threads that something they were waiting for
has happened. If a single thread was waiting for a condition, it can wake up and proceed with its
execution. If several threads were waiting, they can all wake up and compete for the resource for
which they were waiting.
A mutual exclusion object used to permit access to a resource (such as a section of executable
code) while preventing other threads from accessing the resource.
A read/write lock object used to lock a specific variable for access while preventing its use by other ... zobacz całą notatkę