Spec-Zone .ru
спецификации, руководства, описания, API
|
Для табличного события ввода-вывода обычно есть две строки в events_waits_current
, не один. Например, выборка строки могла бы привести к
строкам как это:
Row# EVENT_NAME TIMER_START TIMER_END---- ---------- ----------- --------- 1 wait/io/file/myisam/dfile 10001 10002 2 wait/io/table/sql/handler 10000 NULL
Выборка строки вызывает чтение файла. В примере, табличное событие выборки ввода-вывода, запущенное перед
событием файлового ввода-вывода, но, не закончился ( TIMER_END
значение NULL
). Событие файлового ввода-вывода "вкладывается"
в пределах табличного события ввода-вывода.
Это происходит, потому что, в отличие от другого "атомарного" ожидают события такие что касается взаимных исключений
или файлового ввода-вывода, табличные события ввода-вывода являются "молекулярными"
и включают (перекрытие с) другие события. В events_waits_current
, у табличного события ввода-вывода обычно есть две
строки:
Одна строка для нового табличного ввода-вывода ожидает событие
Одна строка для нового ожидает событие любого вида
Обычно, но не всегда, "любого вида" ожидают,
событие отличается от табличного события ввода-вывода. Поскольку каждое вспомогательное событие завершается, оно
исчезает из events_waits_current
. В этой точке, и пока начинается следующее
вспомогательное событие, табличный ввод-вывод ожидают, также ново, ожидают любого вида.