170 похожих чатов

А где описано то, что os.File буферизированный?

13 ответов

19 просмотров

там его дескриптор, не о его рантайм буфере речь, дескрипшен os.Stdout.Sync() // Sync commits the current contents of the file to stable storage. // Typically, this means flushing the file system's in-memory copy // of recently written data to disk. что никак не связано с std::flush, просто у плюсов тоже есть интернал буфер и флаш плюс минус тем же занимается

Так есть кернел буфер. stf:: flush сначала сбрасывает user space буфер, а затем ядерный

Евгений Омельченко
Так есть кернел буфер. stf:: flush сначала сбрасыв...

он в связке с чем-то используется, cout, std::basic_ostream

Данил
он в связке с чем-то используется, cout, std::basi...

This manipulator may be used to produce an incomplete line of output immediately, e.g. when displaying output from a long-running process, logging activity of multiple threads or logging activity of a program that may crash unexpectedly. An explicit flush of std::cout is also necessary before a call to std::system, if the spawned process performs any screen I/O (a common example is std::system("pause") on Windows). In most other usual interactive I/O scenarios, std::endl is redundant when used with std::cout because any input from std::cin, output to std::cerr, or program termination forces a call to std::cout.flush(). When a complete line of output needs to be flushed, the std::endl manipulator may be used. When every output operation needs to be flushed, the std::unitbuf manipulator may be used.

wm0- Автор вопроса
Евгений Омельченко
Так есть кернел буфер. stf:: flush сначала сбрасыв...

Системный вызов на запись использует ядерный буфер? Правильно понял?

Данил
unix-like они вообще не буфферизируются

это мы про консоль говорим понятное дело

wm0- Автор вопроса
Данил
unix-like они вообще не буфферизируются

Тогда почему os.Stdout буферизированный? У него метод Write в цикле write сисколит

wm0
Тогда почему os.Stdout буферизированный? У него ме...

так он буферизированный на уровне рантайма

wm0- Автор вопроса
wm0
Смотрю код, не вижу такого

ну в смысле. ты из bufio.NewWriter допустим как уже выше отписали закидываешь сисколом в stdout, где на уровне кернела и дропаута буфера нет

wm0- Автор вопроса
Данил
ну в смысле. ты из bufio.NewWriter допустим как уж...

Так у os.Stdout есть метод Sync(). Я могу сделать os.Stdout.Write(bytes) - это буфериз. или нет запись будет?

wm0
Так у os.Stdout есть метод Sync(). Я могу сделать ...

фактически, если у тебя os.Stdout не связан с реальным файлов, то смысла он не имеет

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта