Skip to content

Commit 8f68f1c

Browse files
committedFeb 13, 2014
Merge branch 'master' into new_disk_cache_api
2 parents 7637abf + af4873e commit 8f68f1c

File tree

4 files changed

+13
-8
lines changed

4 files changed

+13
-8
lines changed
 

‎library/src/com/nostra13/universalimageloader/core/DisplayBitmapTask.java

+1
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public DisplayBitmapTask(Bitmap bitmap, ImageLoadingInfo imageLoadingInfo, Image
5959
this.loadedFrom = loadedFrom;
6060
}
6161

62+
@Override
6263
public void run() {
6364
if (imageAware.isCollected()) {
6465
if (loggingEnabled) L.d(LOG_TASK_CANCELLED_IMAGEAWARE_COLLECTED, memoryCacheKey);

‎library/src/com/nostra13/universalimageloader/core/ImageLoaderEngine.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class ImageLoaderEngine {
4444

4545
private Executor taskExecutor;
4646
private Executor taskExecutorForCachedImages;
47-
private ExecutorService taskDistributor;
47+
private Executor taskDistributor;
4848

4949
private final Map<Integer, String> cacheKeysForImageAwares = Collections
5050
.synchronizedMap(new HashMap<Integer, String>());
@@ -181,6 +181,10 @@ void stop() {
181181
uriLocks.clear();
182182
}
183183

184+
void fireCallback(Runnable r) {
185+
taskDistributor.execute(r);
186+
}
187+
184188
ReentrantLock getLockForUri(String uri) {
185189
ReentrantLock lock = uriLocks.get(uri);
186190
if (lock == null) {

‎library/src/com/nostra13/universalimageloader/core/LoadAndDisplayImageTask.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ public void run() {
173173

174174
DisplayBitmapTask displayBitmapTask = new DisplayBitmapTask(bmp, imageLoadingInfo, engine, loadedFrom);
175175
displayBitmapTask.setLoggingEnabled(writeLogs);
176-
runTask(displayBitmapTask, options.isSyncLoading(), handler);
176+
runTask(displayBitmapTask, options.isSyncLoading(), handler, engine);
177177
}
178178

179179
/** @return <b>true</b> - if task should be interrupted; <b>false</b> - otherwise */
@@ -334,7 +334,7 @@ public void run() {
334334
progressListener.onProgressUpdate(uri, imageAware.getWrappedView(), current, total);
335335
}
336336
};
337-
runTask(r, false, handler);
337+
runTask(r, false, handler, engine);
338338
return true;
339339
}
340340

@@ -349,7 +349,7 @@ public void run() {
349349
listener.onLoadingFailed(uri, imageAware.getWrappedView(), new FailReason(failType, failCause));
350350
}
351351
};
352-
runTask(r, false, handler);
352+
runTask(r, false, handler, engine);
353353
}
354354

355355
private void fireCancelEvent() {
@@ -360,7 +360,7 @@ public void run() {
360360
listener.onLoadingCancelled(uri, imageAware.getWrappedView());
361361
}
362362
};
363-
runTask(r, false, handler);
363+
runTask(r, false, handler, engine);
364364
}
365365

366366
private ImageDownloader getDownloader() {
@@ -457,11 +457,11 @@ private void log(String message, Object... args) {
457457
if (writeLogs) L.d(message, args);
458458
}
459459

460-
static void runTask(Runnable r, boolean sync, Handler handler) {
460+
static void runTask(Runnable r, boolean sync, Handler handler, ImageLoaderEngine engine) {
461461
if (sync) {
462462
r.run();
463463
} else if (handler == null) {
464-
new Thread(r).start();
464+
engine.fireCallback(r);
465465
} else {
466466
handler.post(r);
467467
}

‎library/src/com/nostra13/universalimageloader/core/ProcessAndDisplayImageTask.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,6 @@ public void run() {
5555
DisplayBitmapTask displayBitmapTask = new DisplayBitmapTask(processedBitmap, imageLoadingInfo, engine,
5656
LoadedFrom.MEMORY_CACHE);
5757
displayBitmapTask.setLoggingEnabled(engine.configuration.writeLogs);
58-
LoadAndDisplayImageTask.runTask(displayBitmapTask, imageLoadingInfo.options.isSyncLoading(), handler);
58+
LoadAndDisplayImageTask.runTask(displayBitmapTask, imageLoadingInfo.options.isSyncLoading(), handler, engine);
5959
}
6060
}

0 commit comments

Comments
 (0)