Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
techpriest
 Аватар для Mirmik
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180

Таски и продолжения

16.02.2017, 15:34. Показов 891. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если я каждые N миллисекунд буду навешивать на таск коротенькое продолжение, получу я out of memor или нет?

Иначе говоря, хранит ли опродолженный таск в памяти всех своих предшественноиков со всеми их замыканиями, или они освобождаются по мере исполнения?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.02.2017, 15:34
Ответы с готовыми решениями:

Таски и захват мьютекса
Перешел с одного компа на другой - получил проблему. Использую таски. Таски по очереди захватывают мьютекс для работы с com портом. На...

Запуск таски из виндового с шедулера с максимальными правами
Всем доброго времени суток. Возникла следующая проблема. Есть cmd-файл на виндовом сервере, который запускает процесс загрузки...

Scheduler (spring) , как сделать on/off выключатель для таски
Всем Привет, Не могу понять как сделать метод в контроллере POST /activte который обновит таску по id с бд и поставит ей active = true и...

4
64 / 64 / 35
Регистрация: 14.12.2015
Сообщений: 145
16.02.2017, 16:58
Mirmik, привет! Вопрос вообще актуален очень давно. Но большинство сходится на мнении, что таски типа continueWith не содержит информацию о предыдущем выполнении или содержат, но ничтожно малую. Самому бы хотелось знать точно..
0
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
16.02.2017, 18:06
Цитата Сообщение от Mirmik Посмотреть сообщение
Если я каждые N миллисекунд буду навешивать на таск коротенькое продолжение, получу я out of memor или нет?
А самому проверить?
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void Main()
{
    var task = Task.FromResult(0);
    
    for (int i = 0; i < 1000; i++)
    {
        var buffer = new Buffer();
        task.ContinueWith(t => { buffer.Bytes[6] = 8; return buffer.Bytes[1]; });
    }
}
 
class Buffer
{
    public byte[] Bytes = new byte[1024];
    
    public Buffer()
    {
        Console.WriteLine("new");
        new Random(Guid.NewGuid().GetHashCode()).NextBytes(Bytes);
    }
    
    ~Buffer()
    {
        Console.WriteLine("finalized");
    }
}


Добавлено через 17 минут
Немного не то было...
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void Main()
{
    var task = Task.FromResult(0);
    
    for (int i = 0; i < 1000; i++)
    {
        var buffer = new Buffer();
        task = task.ContinueWith(t => { buffer.Bytes[6] = 8; return (int)buffer.Bytes[1]; });
    }
}
 
class Buffer
{
    public byte[] Bytes = new byte[16378];
    
    public Buffer()
    {
        Console.WriteLine("new");
        new Random(Guid.NewGuid().GetHashCode()).NextBytes(Bytes);
    }
    
    ~Buffer()
    {
        Console.WriteLine("finalized");
    }
}
0
techpriest
 Аватар для Mirmik
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180
17.02.2017, 10:36  [ТС]
Тоесть, вроде как очищаются, но не сразу, а по мере заполнения памяти. Я правильно понимаю?
0
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
17.02.2017, 17:45
Цитата Сообщение от Mirmik Посмотреть сообщение
Тоесть, вроде как очищаются, но не сразу, а по мере заполнения памяти.
То есть как обычно. Хоть с тасками, хоть без. Информацию о сборке мусора в .Net можете нагуглить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.02.2017, 17:45
Помогаю со студенческими работами здесь

Продолжения
Пытаюсь разобраться с продолжениями. Упёрся в задачу (отсюда): С помощью call/cc написать функцию, в бесконечном цикле выводящую...

Продолжения (Continuations)
Хотелось бы узнать, использует ли кто-нибудь в своей практике механизм продолжений? Если да, то в каких случаях. Или это больше...

Продолжения функции
Господа, помогите пожалуйста с одной задачкой. Необходимо построить в Maple четное, нечетное, четно-нечетное, нечетно-четное продолжения...

Продолжения в Python
Искал чего-нибудь по этой теме и нашёл http://wiki.c2.com/?ContinuationsInPython Поведение простого кода с продолжениями на скиме: ...

Ввод продолжения ссыли
Всем привет) Такая проблема. Нужен скрипт: Должен работать по принципу. Допустим есть сайт Vk.com (http://vk.com/) ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru