home.social

#atomicusize — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #atomicusize, aggregated by home.social.

fetched live
  1. Многопоточность в Rust: как Ownership, Send и Sync помогают бороться с гонками данных

    Всем привет! В предыдущей статье мы с вами разобрали обычную проблему C++: десять потоков увеличивают общий счётчик, но из-за гонки данных программа может работать неправильно. В Rust мы с вами постараемся решить ту же самую задачу. Главное отличие заключается не в том, что Rust умеет создавать потоки каким-то лучшим способом, а дело в модели владения и системе типов: компилятор не позволяет безопасному коду произвольно разделять изменяемые данные между потоками. Но это кстати и не значит, что Rust автоматически исправляет любую ошибку в многопоточности. Логические ошибки, взаимные блокировки и неправильная синхронизация по-прежнему возможны. Будем разбираться с вами на практических примерах.

    habr.com/ru/articles/1102290/

    #программирование #sync #системное_программирование #многопоточность #mutex #send #rust #atomicusize

  2. Многопоточность в Rust: как Ownership, Send и Sync помогают бороться с гонками данных

    В предыдущей статье мы разобрали гонку данных в C++: десять потоков увеличивают общий счётчик, но без синхронизации программа может работать некорректно. Теперь решим ту же задачу на Rust . Разберём, как модель владения и система типов помогают предотвращать небезопасный доступ к общим данным, зачем нужны Arc , Mutex и AtomicUsize , а также какую роль играют Send и Sync . На практических примерах сравним независимые вычисления, совместное изменение состояния и ожидание событий через Condvar . Отдельно поговорим о том, чего Rust не гарантирует автоматически: логические ошибки, взаимные блокировки и проблемы координации потоков всё ещё требуют внимания разработчика. Это продолжение серии о системном программировании на C++ и Rust — с кодом, разбором механизмов и практическими выводами.

    habr.com/ru/articles/1101432/

    #программирование #sync #многопоточность #mutex #send #ownership #rust #atomicusize

Share on Mastodon

Enter the server where you have an account.