Parallelise.

This commit is contained in:
Florian THIERRY
2026-07-17 18:02:07 +02:00
parent 8e04be8ece
commit edb87ce98a
+12 -2
View File
@@ -78,8 +78,18 @@ impl LibraryItemAdapter {
impl VideoPort for LibraryItemAdapter {
fn list_root_folder(&self) -> Result<Vec<LibraryRawItem>, VideoError> {
let file_system_items = self.get_root_folder_read_library_items()?;
let db_items = self.get_all_library_items_from_db()
let adapter1 = self.clone();
let file_system_handle = std::thread::spawn(move || {
adapter1.get_root_folder_read_library_items()
});
let adapter2 = self.clone();
let db_handle = std::thread::spawn(move || {
adapter2.get_all_library_items_from_db()
});
let file_system_items = file_system_handle.join().unwrap()?;
let db_items = db_handle.join().unwrap()
.map_err(|_| VideoError::FileReadingTechnicalIssue)?;
let merged = Self::merge_item_lists(file_system_items, db_items);