tôi cần để có thể tiết kiệm/trạng thái tải của máy phát điện ngẫu nhiên tăng này:thay thế nhanh hơn so với sử dụng các luồng lưu thúc đẩy phát ngẫu nhiên trạng thái
boost::variate_generator<boost::mt19937, boost::random::uniform_real_distribution<> > generator;
tôi làm điều đó theo cách này:
std::ostringstream content;
content << this->generator.engine();
Vấn đề là, điều này là cực kỳ chậm, không phải là có một số cách khác để lưu trữ nó? (Hoặc truy cập dữ liệu máy phát ngẫu nhiên ở định dạng gốc). Mã này được đóng gói trong lớp RandomGenerator
của chúng tôi, vì vậy nó có thể hơi khó chịu.
Quá trình ghi này mất khoảng 0,13 mili giây trên máy Mac mini 2,26 GHz của tôi. Làm thế nào nhanh chóng nó cần phải được? – rhashimoto
Tôi không biết, 293800 Chu trình CPU có vẻ như là một thời gian dài! – Yakk
Có vẻ như cách duy nhất để lưu và khôi phục trạng thái là thông qua luồng. Để cải thiện hiệu suất, bạn có thể viết luồng tùy chỉnh của riêng mình (kế thừa từ 'std :: streambuf') và đọc vào đó hoặc xem xét boost :: iostreams. –