mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-09-02 02:43:07 +00:00
Launches switching ASNetworkImageNode callbacks to global queue. (#1369)
* Launches switching ASNetworkImageNode callbacks to global queue. * Good catch configuration tests!
This commit is contained in:
parent
4c370a899c
commit
fce6f23b97
@ -18,7 +18,6 @@
|
|||||||
"exp_interface_state_coalesce",
|
"exp_interface_state_coalesce",
|
||||||
"exp_unfair_lock",
|
"exp_unfair_lock",
|
||||||
"exp_infer_layer_defaults",
|
"exp_infer_layer_defaults",
|
||||||
"exp_network_image_queue",
|
|
||||||
"exp_collection_teardown",
|
"exp_collection_teardown",
|
||||||
"exp_framesetter_cache",
|
"exp_framesetter_cache",
|
||||||
"exp_skip_clear_data",
|
"exp_skip_clear_data",
|
||||||
|
@ -23,15 +23,14 @@ typedef NS_OPTIONS(NSUInteger, ASExperimentalFeatures) {
|
|||||||
ASExperimentalInterfaceStateCoalescing = 1 << 2, // exp_interface_state_coalesce
|
ASExperimentalInterfaceStateCoalescing = 1 << 2, // exp_interface_state_coalesce
|
||||||
ASExperimentalUnfairLock = 1 << 3, // exp_unfair_lock
|
ASExperimentalUnfairLock = 1 << 3, // exp_unfair_lock
|
||||||
ASExperimentalLayerDefaults = 1 << 4, // exp_infer_layer_defaults
|
ASExperimentalLayerDefaults = 1 << 4, // exp_infer_layer_defaults
|
||||||
ASExperimentalNetworkImageQueue = 1 << 5, // exp_network_image_queue
|
ASExperimentalCollectionTeardown = 1 << 5, // exp_collection_teardown
|
||||||
ASExperimentalCollectionTeardown = 1 << 6, // exp_collection_teardown
|
ASExperimentalFramesetterCache = 1 << 6, // exp_framesetter_cache
|
||||||
ASExperimentalFramesetterCache = 1 << 7, // exp_framesetter_cache
|
ASExperimentalSkipClearData = 1 << 7, // exp_skip_clear_data
|
||||||
ASExperimentalSkipClearData = 1 << 8, // exp_skip_clear_data
|
ASExperimentalDidEnterPreloadSkipASMLayout = 1 << 8, // exp_did_enter_preload_skip_asm_layout
|
||||||
ASExperimentalDidEnterPreloadSkipASMLayout = 1 << 9, // exp_did_enter_preload_skip_asm_layout
|
ASExperimentalDisableAccessibilityCache = 1 << 9, // exp_disable_a11y_cache
|
||||||
ASExperimentalDisableAccessibilityCache = 1 << 10, // exp_disable_a11y_cache
|
ASExperimentalSkipAccessibilityWait = 1 << 10, // exp_skip_a11y_wait
|
||||||
ASExperimentalSkipAccessibilityWait = 1 << 11, // exp_skip_a11y_wait
|
ASExperimentalNewDefaultCellLayoutMode = 1 << 11, // exp_new_default_cell_layout_mode
|
||||||
ASExperimentalNewDefaultCellLayoutMode = 1 << 12, // exp_new_default_cell_layout_mode
|
ASExperimentalDispatchApply = 1 << 12, // exp_dispatch_apply
|
||||||
ASExperimentalDispatchApply = 1 << 13, // exp_dispatch_apply
|
|
||||||
ASExperimentalFeatureAll = 0xFFFFFFFF
|
ASExperimentalFeatureAll = 0xFFFFFFFF
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -17,7 +17,6 @@ NSArray<NSString *> *ASExperimentalFeaturesGetNames(ASExperimentalFeatures flags
|
|||||||
@"exp_interface_state_coalesce",
|
@"exp_interface_state_coalesce",
|
||||||
@"exp_unfair_lock",
|
@"exp_unfair_lock",
|
||||||
@"exp_infer_layer_defaults",
|
@"exp_infer_layer_defaults",
|
||||||
@"exp_network_image_queue",
|
|
||||||
@"exp_collection_teardown",
|
@"exp_collection_teardown",
|
||||||
@"exp_framesetter_cache",
|
@"exp_framesetter_cache",
|
||||||
@"exp_skip_clear_data",
|
@"exp_skip_clear_data",
|
||||||
|
@ -125,16 +125,7 @@ static std::atomic_bool _useMainThreadDelegateCallbacks(true);
|
|||||||
|
|
||||||
- (dispatch_queue_t)callbackQueue
|
- (dispatch_queue_t)callbackQueue
|
||||||
{
|
{
|
||||||
static dispatch_once_t onceToken;
|
return dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
|
||||||
static dispatch_queue_t callbackQueue;
|
|
||||||
dispatch_once(&onceToken, ^{
|
|
||||||
if (ASActivateExperimentalFeature(ASExperimentalNetworkImageQueue)) {
|
|
||||||
callbackQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
|
|
||||||
} else {
|
|
||||||
callbackQueue = dispatch_get_main_queue();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return callbackQueue;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - Public methods -- must lock
|
#pragma mark - Public methods -- must lock
|
||||||
|
@ -23,7 +23,6 @@ static ASExperimentalFeatures features[] = {
|
|||||||
ASExperimentalInterfaceStateCoalescing,
|
ASExperimentalInterfaceStateCoalescing,
|
||||||
ASExperimentalUnfairLock,
|
ASExperimentalUnfairLock,
|
||||||
ASExperimentalLayerDefaults,
|
ASExperimentalLayerDefaults,
|
||||||
ASExperimentalNetworkImageQueue,
|
|
||||||
ASExperimentalCollectionTeardown,
|
ASExperimentalCollectionTeardown,
|
||||||
ASExperimentalFramesetterCache,
|
ASExperimentalFramesetterCache,
|
||||||
ASExperimentalSkipClearData,
|
ASExperimentalSkipClearData,
|
||||||
@ -49,7 +48,6 @@ static ASExperimentalFeatures features[] = {
|
|||||||
@"exp_interface_state_coalesce",
|
@"exp_interface_state_coalesce",
|
||||||
@"exp_unfair_lock",
|
@"exp_unfair_lock",
|
||||||
@"exp_infer_layer_defaults",
|
@"exp_infer_layer_defaults",
|
||||||
@"exp_network_image_queue",
|
|
||||||
@"exp_collection_teardown",
|
@"exp_collection_teardown",
|
||||||
@"exp_framesetter_cache",
|
@"exp_framesetter_cache",
|
||||||
@"exp_skip_clear_data",
|
@"exp_skip_clear_data",
|
||||||
|
@ -109,7 +109,6 @@
|
|||||||
|
|
||||||
- (void)cachedImageWithURL:(NSURL *)URL callbackQueue:(dispatch_queue_t)callbackQueue completion:(ASImageCacherCompletion)completion
|
- (void)cachedImageWithURL:(NSURL *)URL callbackQueue:(dispatch_queue_t)callbackQueue completion:(ASImageCacherCompletion)completion
|
||||||
{
|
{
|
||||||
ASDisplayNodeAssert(callbackQueue == dispatch_get_main_queue(), @"ASTestImageCache expects main queue for callback.");
|
|
||||||
completion(nil);
|
completion(nil);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user