Информация об изменениях

Сообщение Re[3]: Нужен совет и MaxDegreeOfParallelism от 15.02.2019 14:25

Изменено 15.02.2019 14:41 RushDevion

Re[3]: Нужен совет и MaxDegreeOfParallelism
S>.net 4.5.2
Ну заменить MemoryBuffer на MemoryStream.

S>Увы, штука сильно динамическая, поскольку в процессе обработки будут использоваться\подгружаться другие файлв в кол-ве от 3 до 8, и все это будет конвертироваться в соотв. базу данных для обработки.

S>Отсюда возможно всплески до 1ГБ и более. Тут трудно что-либо предсказать. Просто есть вероятность, что если файл >30Мб то возможно отъесть до 1Гб ОЗУ. А может и нет. Поэтму не подходит.
Ну все равно я бы думал в сторону контролёра памяти, который следил бы за объемом доступной памяти и разрешал-запрещал операцию с файлом.

S>Меня больше интересуют гарантии, что при MaxDegreeOfParallelism = 1 точно будет один поток, а то выяснится, что это так, пожелание, которое планировщик вполне может игнорировать.

Так а зачем тебе для MaxDegreeOfParallelism=1 Parallel? Запускай отдельный поток/таску и перебирай в цикле.
Re[3]: Нужен совет и MaxDegreeOfParallelism
S>.net 4.5.2
Ну заменить MemoryBuffer на MemoryStream.

S>Увы, штука сильно динамическая, поскольку в процессе обработки будут использоваться\подгружаться другие файлв в кол-ве от 3 до 8, и все это будет конвертироваться в соотв. базу данных для обработки.

S>Отсюда возможно всплески до 1ГБ и более. Тут трудно что-либо предсказать. Просто есть вероятность, что если файл >30Мб то возможно отъесть до 1Гб ОЗУ. А может и нет. Поэтму не подходит.
Ну все равно я бы думал в сторону контролёра памяти, который следил бы за объемом доступной памяти и разрешал-запрещал операцию с файлом.

S>Меня больше интересуют гарантии, что при MaxDegreeOfParallelism = 1 точно будет один поток, а то выяснится, что это так, пожелание, которое планировщик вполне может игнорировать.

Так а зачем тебе Parallel для MaxDegreeOfParallelism=1? Просто запускай отдельный поток/таску и перебирай в цикле.