From 1a7e211d94576df299513310eb837b79e689e010 Mon Sep 17 00:00:00 2001 From: David Green Date: Sun, 16 Jan 2022 10:52:37 -0800 Subject: [PATCH] always use an isolate even when debugging make debugging more comparable to release mode by using an isolate to process jobs. This helps to expose issues such as job queueing. issue: #24 --- lib/src/cache/caches.dart | 2 +- lib/src/cache/image_tile_loading_cache.dart | 2 +- lib/src/executor/executor.dart | 3 ++- lib/src/executor/isolate_executor.dart | 2 +- lib/src/grid/grid_vector_tile.dart | 1 - lib/src/grid/renderer_pipeline.dart | 2 +- lib/src/grid/tile_model.dart | 2 +- lib/src/stream/delay_provider.dart | 2 +- lib/src/stream/preprocessing_tile_provider.dart | 5 ++--- lib/src/stream/provider_supplier.dart | 3 +-- lib/src/stream/tile_supplier.dart | 2 +- lib/src/tile_viewport.dart | 2 +- 12 files changed, 13 insertions(+), 15 deletions(-) diff --git a/lib/src/cache/caches.dart b/lib/src/cache/caches.dart index f000cea..9961841 100644 --- a/lib/src/cache/caches.dart +++ b/lib/src/cache/caches.dart @@ -1,7 +1,7 @@ import 'dart:io'; import 'package:path_provider/path_provider.dart'; -import 'package:vector_map_tiles/src/executor/executor.dart'; +import '../executor/executor.dart'; import '../../vector_map_tiles.dart'; import '../grid/renderer_pipeline.dart'; diff --git a/lib/src/cache/image_tile_loading_cache.dart b/lib/src/cache/image_tile_loading_cache.dart index 24f7407..5df02e1 100644 --- a/lib/src/cache/image_tile_loading_cache.dart +++ b/lib/src/cache/image_tile_loading_cache.dart @@ -1,6 +1,6 @@ import 'dart:ui'; -import 'package:vector_map_tiles/src/executor/executor.dart'; +import '../executor/executor.dart'; import 'package:vector_tile_renderer/vector_tile_renderer.dart'; import '../grid/renderer_pipeline.dart'; diff --git a/lib/src/executor/executor.dart b/lib/src/executor/executor.dart index a044d71..093da02 100644 --- a/lib/src/executor/executor.dart +++ b/lib/src/executor/executor.dart @@ -3,6 +3,7 @@ import 'dart:io'; import 'dart:math'; import 'package:flutter/foundation.dart'; +import 'isolate_executor.dart'; import 'direct_executor.dart'; import 'pool_executor.dart'; @@ -35,5 +36,5 @@ class CancellationException implements Exception { } Executor newExecutor() => kDebugMode - ? DirectExecutor() + ? IsolateExecutor() : PoolExecutor(concurrency: max(Platform.numberOfProcessors - 2, 1)); diff --git a/lib/src/executor/isolate_executor.dart b/lib/src/executor/isolate_executor.dart index 6c5c448..dd13931 100644 --- a/lib/src/executor/isolate_executor.dart +++ b/lib/src/executor/isolate_executor.dart @@ -1,6 +1,6 @@ import 'dart:async'; - import 'dart:isolate'; + import 'package:async/async.dart'; import 'package:flutter/foundation.dart'; diff --git a/lib/src/grid/grid_vector_tile.dart b/lib/src/grid/grid_vector_tile.dart index 6985b4e..b83d686 100644 --- a/lib/src/grid/grid_vector_tile.dart +++ b/lib/src/grid/grid_vector_tile.dart @@ -3,7 +3,6 @@ import 'package:flutter/widgets.dart'; import 'package:vector_tile_renderer/vector_tile_renderer.dart'; import '../options.dart'; -import '../stream/tile_supplier.dart'; import '../tile_identity.dart'; import 'debounce.dart'; import 'disposable_state.dart'; diff --git a/lib/src/grid/renderer_pipeline.dart b/lib/src/grid/renderer_pipeline.dart index 03e0948..ebc238e 100644 --- a/lib/src/grid/renderer_pipeline.dart +++ b/lib/src/grid/renderer_pipeline.dart @@ -1,7 +1,7 @@ import 'dart:async'; import 'dart:collection'; import 'dart:ui'; -import 'package:vector_map_tiles/src/executor/executor.dart'; +import '../executor/executor.dart'; import 'package:vector_tile_renderer/vector_tile_renderer.dart'; import '../tile_identity.dart'; diff --git a/lib/src/grid/tile_model.dart b/lib/src/grid/tile_model.dart index 49db603..ee10918 100644 --- a/lib/src/grid/tile_model.dart +++ b/lib/src/grid/tile_model.dart @@ -1,7 +1,7 @@ import 'dart:ui' as ui; import 'package:flutter/widgets.dart'; -import 'package:vector_map_tiles/src/executor/executor.dart'; +import '../executor/executor.dart'; import 'package:vector_tile_renderer/vector_tile_renderer.dart'; import '../options.dart'; diff --git a/lib/src/stream/delay_provider.dart b/lib/src/stream/delay_provider.dart index a376dcd..cb17c3d 100644 --- a/lib/src/stream/delay_provider.dart +++ b/lib/src/stream/delay_provider.dart @@ -1,6 +1,6 @@ import 'dart:math'; -import 'package:vector_map_tiles/src/stream/tile_supplier.dart'; +import 'tile_supplier.dart'; import '../../vector_map_tiles.dart'; diff --git a/lib/src/stream/preprocessing_tile_provider.dart b/lib/src/stream/preprocessing_tile_provider.dart index 00f3c77..bdd7f85 100644 --- a/lib/src/stream/preprocessing_tile_provider.dart +++ b/lib/src/stream/preprocessing_tile_provider.dart @@ -1,10 +1,9 @@ import 'dart:async'; -import 'package:vector_map_tiles/src/executor/executor.dart'; +import 'package:vector_tile_renderer/vector_tile_renderer.dart'; +import '../executor/executor.dart'; import 'tile_supplier.dart'; -import '../tile_identity.dart'; -import 'package:vector_tile_renderer/vector_tile_renderer.dart'; class PreprocessingTileProvider extends TileProvider { final TileProvider _delegate; diff --git a/lib/src/stream/provider_supplier.dart b/lib/src/stream/provider_supplier.dart index 48d3abb..2b0ef62 100644 --- a/lib/src/stream/provider_supplier.dart +++ b/lib/src/stream/provider_supplier.dart @@ -1,8 +1,7 @@ import 'dart:async'; -import '../tile_identity.dart'; - import '../grid/slippy_map_translator.dart'; +import '../tile_identity.dart'; import 'tile_supplier.dart'; class ProviderTileSupplier extends TileSupplier { diff --git a/lib/src/stream/tile_supplier.dart b/lib/src/stream/tile_supplier.dart index b194a53..2567de1 100644 --- a/lib/src/stream/tile_supplier.dart +++ b/lib/src/stream/tile_supplier.dart @@ -1,7 +1,7 @@ import 'dart:async'; import 'dart:ui'; -import 'package:vector_map_tiles/src/executor/executor.dart'; +import '../executor/executor.dart'; import 'package:vector_tile_renderer/vector_tile_renderer.dart'; import '../../vector_map_tiles.dart'; diff --git a/lib/src/tile_viewport.dart b/lib/src/tile_viewport.dart index 2aea320..a2dd109 100644 --- a/lib/src/tile_viewport.dart +++ b/lib/src/tile_viewport.dart @@ -1,7 +1,7 @@ import 'dart:math'; import 'package:flutter_map/plugin_api.dart'; -import 'package:vector_map_tiles/vector_map_tiles.dart'; +import '../vector_map_tiles.dart'; class TileViewport { final int zoom;