Re: не множко не в тему..

2005-10-09 Пенетрантность Dmitry Nezhevenko
On Sunday 09 October 2005 20:19, Artem Chuprina wrote:
> Reuben Kagan -> debian-russian@lists.debian.org  @ Sun, 9 Oct 2005 18:12:40
> +0400 (MSD):
>
>  RK> Извините пожалуйста, я кажется совсем ничего не понимаю -- разве
>  RK> хендлы открытых файлов после форка не общие?  то есть из stdin они
>  RK> будут читать одни и те же строки?
>
> Хендлы - нет.  Это данные процесса, а у процессов нет общих данных.  А
> что они будут читать из stdin, зависит от того, кто у нас сегодня stdin.
> Если пайп или сокет, то кто первый встал, того и тапки (плюс надо еще
> учитывать буферизацию) - read(2) забирает оттуда прочитанное с концами.
> Если файл - будут читать одни и те же.
>
Решилось использованием dup. 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Artem Chuprina
Reuben Kagan -> debian-russian@lists.debian.org  @ Sun, 9 Oct 2005 18:12:40 
+0400 (MSD):

 RK> Извините пожалуйста, я кажется совсем ничего не понимаю -- разве
 RK> хендлы открытых файлов после форка не общие?  то есть из stdin они
 RK> будут читать одни и те же строки?

Хендлы - нет.  Это данные процесса, а у процессов нет общих данных.  А
что они будут читать из stdin, зависит от того, кто у нас сегодня stdin.
Если пайп или сокет, то кто первый встал, того и тапки (плюс надо еще
учитывать буферизацию) - read(2) забирает оттуда прочитанное с концами.
Если файл - будут читать одни и те же.

-- 
Artem Chuprina
RFC2822:  Jabber: [EMAIL PROTECTED]

А вы поподробнее, поподробнее. А заодно и быстрее будет...


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Dmitry Nezhevenko
On Sunday 09 October 2005 15:11, Dmitry A. Fedorov wrote:
> On Sun, 9 Oct 2005, Dmitry Nezhevenko wrote:
> > > Впрочем, можно и так: пусть один процесс берет только четные строки, а
> > > другой - нечетные.
> >
> > Не катит. Надо чтобы читалось как есть
> >
> > > Все равно обоим читать весь файл.
> >
> > Нет
>
> Тогда это невозможно: определить концы строк в плоском файле можно
> только читая файл. Заранее смещения концов строк знать невозможно.

угу

>
> > Решил входной файл сделать фикс. длины.. Теперь все просто.
>
> Не файл, а записи в нем. Тогда эта задача формулируется совсем по
> другому.

Согласен


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Dmitry A. Fedorov
On Sun, 9 Oct 2005, Dmitry Nezhevenko wrote:

> > Впрочем, можно и так: пусть один процесс берет только четные строки, а
> > другой - нечетные.
> 
> Не катит. Надо чтобы читалось как есть
> 
> > Все равно обоим читать весь файл. 
> 
> Нет 

Тогда это невозможно: определить концы строк в плоском файле можно 
только читая файл. Заранее смещения концов строк знать невозможно.


> Решил входной файл сделать фикс. длины.. Теперь все просто.

Не файл, а записи в нем. Тогда эта задача формулируется совсем по 
другому.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Dmitry Nezhevenko
On Sunday 09 October 2005 14:52, Dmitry A. Fedorov wrote:
> Посылать бесполезно: он хочет обойтись без семафоров и разделяемой
> памяти.

УГУ

> Впрочем, можно и так: пусть один процесс берет только четные строки, а
> другой - нечетные.

Не катит. Надо чтобы читалось как есть

> Все равно обоим читать весь файл. 

Нет 

>
> Или пусть ему препод объяснит, что он понимает здесь под словом "читать"
> и "файл" - без этого задача слишком неопределена.

При чем тут препод??

Решил входной файл сделать фикс. длины.. Теперь все просто.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Dmitry A. Fedorov
On Sun, 9 Oct 2005, Artem Chuprina wrote:

> Dmitry Nezhevenko -> debian-russian@lists.debian.org  @ Sun, 9 Oct 2005 
> 13:44:30 +0300:
> 
>  DN> Есть Сишная прога, которая открывает текстовый файл для чтения и
>  DN> делает fork(). Вопрос в том, как теперь заставить эти 2 процесса
>  DN> читать этот файл одновременно, но чтобы строки прочитанные 1
>  DN> потоком не были прочитаны вторым и наоборот.
> 
> Никак.  То бишь поизгаляться, конечно, можно (организовать параллельный
> механизм синхронизации через семафор и передачи позиции в файле через
> пайп или shared memory).  Но дальше объяснять я буду только после
> предоплаты, а бесплатно только к Стивенсу пошлю.

Посылать бесполезно: он хочет обойтись без семафоров и разделяемой 
памяти.

Впрочем, можно и так: пусть один процесс берет только четные строки, а 
другой - нечетные. Все равно обоим читать весь файл.

Или пусть ему препод объяснит, что он понимает здесь под словом "читать" 
и "файл" - без этого задача слишком неопределена.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Dmitry Nezhevenko
On Sunday 09 October 2005 14:33, Artem Chuprina wrote:
> Никак.  То бишь поизгаляться, конечно, можно (организовать параллельный
> механизм синхронизации через семафор и передачи позиции в файле через
> пайп или shared memory).  Но дальше объяснять я буду только после
> предоплаты, а бесплатно только к Стивенсу пошлю.

Разобрался... 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: не множко не в тему..

2005-10-09 Пенетрантность Artem Chuprina
Dmitry Nezhevenko -> debian-russian@lists.debian.org  @ Sun, 9 Oct 2005 
13:44:30 +0300:

 DN> Есть Сишная прога, которая открывает текстовый файл для чтения и
 DN> делает fork(). Вопрос в том, как теперь заставить эти 2 процесса
 DN> читать этот файл одновременно, но чтобы строки прочитанные 1
 DN> потоком не были прочитаны вторым и наоборот.

Никак.  То бишь поизгаляться, конечно, можно (организовать параллельный
механизм синхронизации через семафор и передачи позиции в файле через
пайп или shared memory).  Но дальше объяснять я буду только после
предоплаты, а бесплатно только к Стивенсу пошлю.

-- 
Artem Chuprina
RFC2822:  Jabber: [EMAIL PROTECTED]

Пользователь юникса перестаёт быть пользователем юникса если после его
пользования пользованный юникс перестаёт быть юниксом. (с)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]