|
|
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
Программа сортировщик раскладывает найденные объекты в отдельные файлы по неким признакам. Имеется динамический список уже открытых файлов. Берется следующий объект, смотрится его признак, и проверяется, есть ли уже открытый файл для объектов такого рода. Если есть, то он кладется туда, если нет, то открывается новый файл, в него помещается объект, а файл помещается в список созданных. Когда кол-во открытых файлов превышает 508 (или где-то так), новые перестают создаваться (errno = 24 - Too many open files). Есть ли возможность разрешить приложению открывать больше файлов?? Или же это ограничение на уровне системы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2007, 16:47 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
Усе, приплыл. Ядро крутить надо. Только вот зачем столько одновременно открытых? достаточно 3-х. Обычто merge делают попарно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2007, 17:33 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
blindedУсе, приплыл. Ядро крутить надо. Только вот зачем столько одновременно открытых? достаточно 3-х. Обычто merge делают попарно. это в виндосе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2007, 17:55 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
Ну дык и он не безграничен. Ты посмотри как работает unix sort - сначала сортирует по кускам, сваливая результаты в файлы, но при этом их аккуратно закрывает, потом берет их попарно и сливает, причем промежуточные итоги за собой удаляет. И так вот фактически древовидно работает, иначе тебе никаких ресурсов не хватит. Вотрос зачем самому маятся если файло текстовое. Дерни из migw sort. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2007, 21:08 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
Помтится в досе в config.sys максимальное количество открываемых файлов (кажется по умолчанию было 20) А нет ли подобногов винде? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2007, 07:22 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
TubrikКогда кол-во открытых файлов превышает 508 (или где-то так), новые перестают создаваться (errno = 24 - Too many open files). Есть ли возможность разрешить приложению открывать больше файлов?? Или же это ограничение на уровне системы? Я с трудом представляю себе постановку, в которой реально необходимо держать столько открытых файлов одновременно. По моему, вам необходимо подумать об, использовании пула файловых объектов. Или поменять постановку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2007, 11:49 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
Т.е. мне открыть файл (если такой уже есть), дописать нужное значение, закрыть. И так с каждым, открывать и закрывать при записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2007, 12:54 |
|
||
|
errno = 24
|
|||
|---|---|---|---|
|
#18+
Это обязательно столько файлов открывать? Возможно ли признак хешировать ил нет? А соединение с фалами кешировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2007, 15:44 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34538159&tid=2028844]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
184ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 491ms |

| 0 / 0 |
