rtic/book/ru/src/by-example/singletons.md
2019-02-11 21:40:53 +01:00

1.3 KiB
Raw Blame History

Одиночки

Атрибут app знает о библиотеке owned-singleton и её атрибуте Singleton. Когда этот атрибут применяется к одному из ресурсов, рантайм производит для Вас unsafe инициализацию одиночки, проверяя, что только один экземпляр одиночки когда-либо создан.

Заметьте, что когда Вы используете атрибут Singleton, Вым нужно иметь owned_singleton в зависимостях.

В примере ниже атрибутом Singleton аннотирован массив памяти, а экземпляр одиночки использован как фиксированный по размеру пул памяти с помощью одной из абстракций alloc-singleton.

{{#include ../../../../examples/singleton.rs}}
$ cargo run --example singleton
{{#include ../../../../ci/expected/singleton.run}}```