В настоящее время я пишу небольшую платформу для управляемых спросом рабочих процессов.API теперь стабилен, и я работаю над улучшением тестов.Легко показать, что вычисления верны (что является хорошим началом), однако основной интерес фреймворка заключается в параллельном запуске подзадач (когда это необходимо и возможно).
Существует ли способ автоматического тестированиячто два разных куска кода работают параллельно / параллельно?Я предпочитаю не полагаться на измерения времени выполнения (ускорения).
Фреймворк написан на scala и во многом зависит от Akka Futures.
РЕДАКТИРОВАТЬ:
Вот пример:
val foo = step {
//... defines an arbitrary task
}
// Runs 5 times the code inside step foo
val foos = repeat( 5 )( foo )
Я хотел бы быть уверен, что код внутри foo
выполняется 5 раз параллельно.