Câu hỏi phỏng vấn Rust
Câu hỏi

Làm thế nào để tạo một singleton...

Câu trả lời

Để tạo một singleton toàn cục có thể thay đổi trong Rust, bạn có thể sử dụng một số cách khác nhau, nhưng một trong những cách phổ biến và an toàn là sử dụng lazy_static! macro kết hợp với Mutex. Điều này cho phép bạn tạo một đối tượng singleton mà chỉ được khởi tạo một lần và có thể truy cập an toàn từ nhiều luồng.

Dưới đây là một ví dụ về cách thực hiện:

rust Copy
use std::sync::Mutex;
use lazy_static::lazy_static;

struct MySingleton {
    // Các trường dữ liệu của bạn ở đây
}

impl MySingleton {
    fn new() -> MySingleton {
        MySingleton {
            // Khởi tạo trường dữ liệu ở đây
        }
    }
}

lazy_static! {
    static ref SINGLETON: Mutex<MySingleton> = Mutex::new(MySingleton::new());
...
senior

senior

Gợi ý câu hỏi phỏng vấn

middle

Làm thế nào để bạn mô hình hóa một mối quan hệ Many-to-Many với Reference-Counted Smart
Pointer
trong Rust?

junior

Làm thế nào để lặp qua một phạm vi với bước tùy chỉnh trong Rust?

middle

Định nghĩa một extension trait cho phép định dạng bất kỳ iterable nào của các kiểu có thể hiển thị trong một định dạng tùy chỉnh trong Rust

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào