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

Unified Diff: content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java

Issue 2849943002: android: Remove sBindingManagerLock (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
index df636694f45b4e868dcf8bf803d67968f1a5375b..0d55839034b89594d4f246f53cf11350d8e283f7 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
@@ -14,6 +14,7 @@ import org.chromium.base.Log;
import org.chromium.base.ThreadUtils;
import org.chromium.base.TraceEvent;
import org.chromium.base.VisibleForTesting;
+import org.chromium.base.annotations.SuppressFBWarnings;
import org.chromium.base.library_loader.Linker;
import org.chromium.base.process_launcher.ChildProcessCreationParams;
import org.chromium.base.process_launcher.FileDescriptorInfo;
@@ -182,9 +183,6 @@ public class ChildProcessLauncher {
private static Map<Integer, BaseChildProcessConnection> sServiceMap =
new ConcurrentHashMap<Integer, BaseChildProcessConnection>();
- // Lock for getBindingManager()
- private static final Object sBindingManagerLock = new Object();
-
// These variables are used for the warm up sandboxed connection.
// |sSpareSandboxedConnection| is non-null when there is a pending connection. Note it's cleared
// to null again after the connection is used for a real child process.
@@ -204,13 +202,13 @@ public class ChildProcessLauncher {
// Lazy initialize sBindingManager
// TODO(boliu): This should be internal to content.
+ @SuppressFBWarnings("LI_LAZY_INIT_STATIC") // Method is single thread.
public static BindingManager getBindingManager() {
- synchronized (sBindingManagerLock) {
- if (sBindingManager == null) {
- sBindingManager = BindingManagerImpl.createBindingManager();
- }
- return sBindingManager;
+ assert LauncherThread.runningOnLauncherThread();
+ if (sBindingManager == null) {
+ sBindingManager = BindingManagerImpl.createBindingManager();
}
+ return sBindingManager;
}
@VisibleForTesting
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698