Skip to content

Commit 6ece468

Browse files
Enable LRU cache in application.
1 parent df49032 commit 6ece468

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

src/app.rs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use std::collections::{BTreeMap, BTreeSet, VecDeque};
22
use std::fmt;
3+
use std::num::NonZeroUsize;
34
use std::time::Duration;
45
#[cfg(not(target_arch = "wasm32"))]
56
use std::time::Instant;
@@ -17,7 +18,9 @@ use crate::data::{
1718
DataSourceInfo, EntryID, EntryIndex, EntryInfo, Field, FieldID, FieldSchema, ItemLink,
1819
ItemMeta, ItemUID, SlotMetaTileData, SlotTileData, SummaryTileData, TileID, TileSet, UtilPoint,
1920
};
20-
use crate::deferred_data::{CountingDeferredDataSource, DeferredDataSource, TileResult};
21+
use crate::deferred_data::{
22+
CountingDeferredDataSource, DeferredDataSource, LruDeferredDataSource, TileResult,
23+
};
2124
use crate::timestamp::{
2225
Interval, Timestamp, TimestampDisplay, TimestampParseError, TimestampUnits,
2326
};
@@ -165,7 +168,7 @@ struct Config {
165168
tile_set: TileSet,
166169
warning_message: Option<String>,
167170

168-
data_source: CountingDeferredDataSource<Box<dyn DeferredDataSource>>,
171+
data_source: CountingDeferredDataSource<LruDeferredDataSource<Box<dyn DeferredDataSource>>>,
169172

170173
search_state: SearchState,
171174

@@ -1438,7 +1441,10 @@ impl Config {
14381441
interval,
14391442
tile_set,
14401443
warning_message,
1441-
data_source: CountingDeferredDataSource::new(data_source),
1444+
data_source: CountingDeferredDataSource::new(LruDeferredDataSource::new(
1445+
data_source,
1446+
NonZeroUsize::new(1024).unwrap(),
1447+
)),
14421448
search_state,
14431449
items_selected: BTreeMap::new(),
14441450
scroll_to_item: None,

0 commit comments

Comments
 (0)