Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(428)

Issue 2151063002: refactor DownloadManagerService to eliminate variable access on 2 different threads (Closed)

Created:
4 years, 5 months ago by qinmin
Modified:
4 years, 5 months ago
Reviewers:
Ted C, Yaron
CC:
chromium-reviews, asanka
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

refactor DownloadManagerService to eliminate variable access on 2 different threads When a download progress changes, Chrome posts an async task to update the notification. Both the async task and the UI thread reads the same variables. As a result, these variables are declared volatile or using thread safe types. This change eliminates such variable sharing by copying the reference first, and then pass the copied data to the async task. Committed: https://crrev.com/4f6d799d1e1355731776cbdd80ad03d6c0a9d237 Cr-Commit-Position: refs/heads/master@{#406618}

Patch Set 1 #

Total comments: 4

Patch Set 2 : rename testcases #

Unified diffs Side-by-side diffs Delta from patch set Stats (+123 lines, -100 lines) Patch
M chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java View 1 11 chunks +116 lines, -95 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java View 1 3 chunks +7 lines, -5 lines 0 comments Download

Messages

Total messages: 18 (6 generated)
qinmin
PTAL
4 years, 5 months ago (2016-07-14 20:43:22 UTC) #2
qinmin
+tedchoc
4 years, 5 months ago (2016-07-18 18:19:25 UTC) #4
Yaron
https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java (right): https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java#newcode365 chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java:365: public void testOnlyOneProgressForFastUpdates() throws InterruptedException { name needs to ...
4 years, 5 months ago (2016-07-19 14:55:19 UTC) #6
qinmin
https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java (right): https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java#newcode365 chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java:365: public void testOnlyOneProgressForFastUpdates() throws InterruptedException { On 2016/07/19 14:55:19, ...
4 years, 5 months ago (2016-07-19 17:47:27 UTC) #7
qinmin
4 years, 5 months ago (2016-07-19 17:47:28 UTC) #8
Yaron
https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java (right): https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java#newcode365 chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java:365: public void testOnlyOneProgressForFastUpdates() throws InterruptedException { On 2016/07/19 17:47:27, ...
4 years, 5 months ago (2016-07-19 19:31:22 UTC) #9
qinmin
https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java (right): https://codereview.chromium.org/2151063002/diff/1/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java#newcode365 chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java:365: public void testOnlyOneProgressForFastUpdates() throws InterruptedException { On 2016/07/19 19:31:22, ...
4 years, 5 months ago (2016-07-19 19:47:31 UTC) #10
Yaron
lgtm
4 years, 5 months ago (2016-07-20 01:04:01 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2151063002/20001
4 years, 5 months ago (2016-07-20 16:29:32 UTC) #13
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 5 months ago (2016-07-20 18:06:15 UTC) #15
commit-bot: I haz the power
CQ bit was unchecked.
4 years, 5 months ago (2016-07-20 18:06:29 UTC) #16
commit-bot: I haz the power
4 years, 5 months ago (2016-07-20 18:07:42 UTC) #18
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/4f6d799d1e1355731776cbdd80ad03d6c0a9d237
Cr-Commit-Position: refs/heads/master@{#406618}

Powered by Google App Engine
This is Rietveld 408576698