Если вы хотите использовать файл для связи с другим процессом, вы должны посмотреть на man fifo
.
доложу здесь только первые строки:
NAME
fifo - first-in first-out special file, named pipe
DESCRIPTION
A FIFO special file (a named pipe) is similar to a pipe, except that it
is accessed as part of the file system. It can be opened by multiple
processes for reading or writing. When processes are exchanging data
via the FIFO, the kernel passes all data internally without writing it
to the file system. Thus, the FIFO special file has no contents on the
file system; the file system entry merely serves as a reference point
so that processes can access the pipe using a name in the file system.
Я думаю, что это то, что вам нужно.
Просто подумайте, как буфер. Он должен быть открыт как для чтения, так и для записи разными способами. Процесс, который читает, будет заблокирован до тех пор, пока процесс записи не напишет на нем. Когда процесс записи заканчивается для записи, закройте файл, и это зеленый индикатор процесса чтения, чтобы запустить пустой буфер. Это FIFO, поэтому первая строка будет первой прочитанной строкой. Затем процесс записи может открыть его снова, и они начнутся снова.
Вы можете создать FIFO с mkfifo
. Посмотрите на man mkfifo
.
Некоторые работающие процессы отвечают - какие и как? работающий процесс всегда открывает файл - какой файл? поток файлов заблокирован - кто это говорит? –
Я имею в виду запущенные процессы в целом. И если я открою файл, его можно заблокировать. Например, открытый файл не может быть изменен, поскольку некоторые другие процессы используют его. Обычные пользователи компьютеров получают это сообщение все время, если они пытаются удалить файл или изменить его. – Amumu