diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2013-08-05 15:01:31 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2013-08-05 15:01:31 +0200 |
commit | a90c7219f363e9b70159b42e3131d49d58561f4b (patch) | |
tree | cddd2296ca98feb885886ae7e324de7f5c8f65ae /src/de | |
parent | 75b13431fed4dbc4e259ead8a3762143be740432 (diff) | |
download | AntennaPod-a90c7219f363e9b70159b42e3131d49d58561f4b.zip |
Refresh lock was used incorrectly
Diffstat (limited to 'src/de')
-rw-r--r-- | src/de/danoeh/antennapod/storage/DBTasks.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/de/danoeh/antennapod/storage/DBTasks.java b/src/de/danoeh/antennapod/storage/DBTasks.java index bf615776d..a3964283c 100644 --- a/src/de/danoeh/antennapod/storage/DBTasks.java +++ b/src/de/danoeh/antennapod/storage/DBTasks.java @@ -10,6 +10,7 @@ import java.util.List; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.FutureTask; +import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.locks.ReentrantLock; import android.content.Context; @@ -73,11 +74,10 @@ public final class DBTasks { } } - private static ReentrantLock refreshAllFeedsLock = new ReentrantLock(); - + private static AtomicBoolean isRefreshing = new AtomicBoolean(false); public static void refreshAllFeeds(final Context context, final List<Feed> feeds) { - if (refreshAllFeedsLock.tryLock()) { + if (isRefreshing.compareAndSet(false, true)) { new Thread() { public void run() { if (feeds != null) { @@ -85,7 +85,7 @@ public final class DBTasks { } else { refreshFeeds(context, DBReader.getFeedList(context)); } - refreshAllFeedsLock.unlock(); + isRefreshing.set(false); } }.start(); } else { |