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

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

13 ответов

5 просмотров

там его дескриптор, не о его рантайм буфере речь, дескрипшен 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 не связан с реальным файлов, то смысла он не имеет

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

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

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
49
читать файл максимально быстро? странный вопрос))
zamtmn
53
How to create an OS in C? what to study?
Linus
18
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
5
@HemulGM Параметры у AddStream поменялись? Несостыковка какая-то
Катерина Свиридова
12
Подскажите, есть какие-то события создания/уничтожения у TFrame по типу TForm (OnCreate и OnClose/OnDestroy) ? Как отловить создание TFrame и "перед" уничтожением. На Tframe р...
Денис
8
а чем хуже?
Alexey Kulakov
10
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
1
Карта сайта