Add SDWebImageWaitStoreCache
, which wait for all the async disk cache written finished and then callback, useful for advanced user who want to touch the cache right in completion block
#2900
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New Pull Request Checklist
I have read and understood the CONTRIBUTING guide
I have read the Documentation
I have searched for a similar pull request in the project and found none
I have updated this branch with the latest master to avoid conflicts (via merge from master or rebase)
I have added the required tests to prove the fix/feature I am adding
I have updated the documentation (if necessary)
I have run the tests and they pass
I have run the lint and it passes (
pod lib lint
)This merge request fixes / refers to the following issues: ...
Pull Request Description
Background
Sometime, user may want to touch the disk cache right in the manager/UIImageView category completion block. However, the current code does not gurantee the callback is after the cache written. You may get the wrong logic if you assume disk cache is ready.
This PR introduce a option
SDWebImageWaitStoreCache
to ensure we callback completion block, Only after we already written everything finished, solve this problem and use case.See the same use case and issue in Kingfisher.