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

Сообщение Re[16]: Как тестировать многопоточные штуки? от 12.02.2025 8:17

Изменено 12.02.2025 8:20 Shmj

Re[16]: Как тестировать многопоточные штуки?
Здравствуйте, Doom100500, Вы писали:

D>Сделать ты это можешь, если у тебя всегда есть хендлы/указатели/ референсы на что-то, что во что у тебя обёрнуты потоки. Синхронизация должна быть с таймаутами (опять что-то, что можно протестировать), а это уже не просто lock{} из helloword и chatgpt, а что-то с контролем времени. Тебе нужно знать как очистить систему при возникновении ситуации, когда ты решаешь прибить сущетвующие задачи с соответствуйющим фидбеком вызывающей стороне, чтобы она также могла обработать эту ситуацию. А для этого тебе нуже вменяемый протокол обмена информацией между твоими потоками. Всего этого у тебя нет.


Для конкретного обсуждения нужно уточнить пример — указать язык/платформу. Потому что в некоторых случаях все исполняется вообще в одном потоке — что даже синхронизация не нужна (Future может вызывать системный вызов в другом потоке, но потом все-равно вернет управление в тот же поток). Но при этом все-равно возможна проблема с синхронизацией данных.

Если готовы не хорохориться перед девками а серьезно обсуждать — давай приведу пример на C#, к примеру.
Re[16]: Как тестировать многопоточные штуки?
Здравствуйте, Doom100500, Вы писали:

D>Сделать ты это можешь, если у тебя всегда есть хендлы/указатели/ референсы на что-то, что во что у тебя обёрнуты потоки. Синхронизация должна быть с таймаутами (опять что-то, что можно протестировать), а это уже не просто lock{} из helloword и chatgpt, а что-то с контролем времени. Тебе нужно знать как очистить систему при возникновении ситуации, когда ты решаешь прибить сущетвующие задачи с соответствуйющим фидбеком вызывающей стороне, чтобы она также могла обработать эту ситуацию. А для этого тебе нуже вменяемый протокол обмена информацией между твоими потоками. Всего этого у тебя нет.


Для конкретного обсуждения нужно уточнить пример — указать язык/платформу. Потому что в некоторых случаях все исполняется вообще в одном потоке — что даже синхронизация не нужна (Future может вызывать системный вызов в другом потоке, но потом все-равно вернет управление в тот же поток). Но при этом все-равно возможна проблема с очередностью вызовов.

Если готовы не хорохориться перед девками а серьезно обсуждать — давай приведу пример на C#, к примеру.