Юзкейс типичнейший: есть приложение с GUI, по нажатию кнопки выполняется долгая операция, хотим выполнять ее в новом потоке. На время выполнения кнопку надо деактивировать, для чего передать указатель на неё в поток. Она по сути своей Rc<Cell<...>>, что не есть Send. Как такое делается?
Деактивируем кнопку, выполняем тяжёлую операцию на другом потоке, активируем обратно. В чём проблема?
Ты хочешь сказать: деактивируешь, спавн, и активируешь? Ну тогда кнопка неактивна на время отработки спавна, а сама задача выполняется на порядок дольше.
Обсуждают сегодня