Что такое c printf %f точность по умолчанию?

блокировка происходит, когда несколько процессов пытаются получить доступ к тому же ресурсу одновременно.

Один процесс терпит неудачу и должен ожидать другого для окончания.

А мертвая блокировка происходит, когда ожидающий процесс все еще держится за другой ресурс, что первые потребности, прежде чем это сможет закончиться.

Так, пример:

Ресурс A и ресурс B используются процессом X и обрабатывают Y

  • X, начинает использовать A.
  • X и Y пытаются начать использовать B
  • Y 'победы', и добирается, B сначала
  • теперь Y должен использовать
  • , А заблокирован X, который ожидает Y

лучший способ избежать, чтобы мертвые блокировки постарались не иметь процессы, пересекают таким образом. Уменьшите потребность заблокировать что-либо так, как Вы можете.

базы данных In стараются не вносить много изменений в различных таблицах в единственной транзакции, избегают триггеров и переключаются на чтения optimistic/dirty/nolock как можно больше.

10
задан spbots 30 July 2009 в 16:39
поделиться

3 ответа

Стандарт ANSI C в разделе 7.19.6.1 говорит о спецификаторе формата f следующее:

Если точность отсутствует, дается 6 цифр

23
ответ дан 3 December 2019 в 14:18
поделиться

Точность по умолчанию для % f составляет 6 цифр (см. Спецификацию ISO C99, 7.19.6.1/7).

6
ответ дан 3 December 2019 в 14:18
поделиться

В книге C: Справочное руководство указано, что если точность не указана, то точность по умолчанию равна 6 (т.е. 6 цифр после десятичной точки).

Одно предостережение - если число является inf (т.е. 1.0 / 0.0) или NaN, тогда C99 указывает, что вывод должен быть inf, -inf, infinity, -infinity или nan и т. д.

6
ответ дан 3 December 2019 в 14:18
поделиться