Index: components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java |
diff --git a/components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java b/components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java |
index e1035c47f58a0088b4efac593beb52c0edc9b51a..6ecb7c4e4816d43b76f068954a9ce2befff53f61 100644 |
--- a/components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java |
+++ b/components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java |
@@ -62,7 +62,7 @@ public class CronetUrlRequestContext extends CronetEngine { |
private final AtomicInteger mActiveRequestCount = new AtomicInteger(0); |
private long mUrlRequestContextAdapter = 0; |
- private Thread mNetworkThread; |
+ private volatile Thread mNetworkThread; |
private boolean mNetworkQualityEstimatorEnabled; |
@@ -182,7 +182,7 @@ public class CronetUrlRequestContext extends CronetEngine { |
@Override |
public UrlRequest createRequest(String url, UrlRequest.Callback callback, Executor executor, |
int priority, Collection<Object> requestAnnotations, boolean disableCache, |
- boolean disableConnectionMigration) { |
+ boolean disableConnectionMigration, boolean allowDirectExecutor) { |
synchronized (mLock) { |
checkHaveAdapter(); |
boolean metricsCollectionEnabled = false; |
@@ -190,7 +190,8 @@ public class CronetUrlRequestContext extends CronetEngine { |
metricsCollectionEnabled = !mFinishedListenerList.isEmpty(); |
} |
return new CronetUrlRequest(this, url, priority, callback, executor, requestAnnotations, |
- metricsCollectionEnabled, disableCache, disableConnectionMigration); |
+ metricsCollectionEnabled, disableCache, disableConnectionMigration, |
+ allowDirectExecutor); |
} |
} |
@@ -492,10 +493,8 @@ public class CronetUrlRequestContext extends CronetEngine { |
@SuppressWarnings("unused") |
@CalledByNative |
private void initNetworkThread() { |
- synchronized (mLock) { |
mef
2016/08/30 17:55:47
what's wrong with synchronized here?
Charles
2016/08/30 20:11:06
Nothing, it's just unnecessary.
mef
2016/08/31 18:30:11
Acknowledged.
|
- mNetworkThread = Thread.currentThread(); |
- mInitCompleted.open(); |
- } |
+ mNetworkThread = Thread.currentThread(); |
+ mInitCompleted.open(); |
Thread.currentThread().setName("ChromiumNet"); |
Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); |
} |
@@ -626,4 +625,8 @@ public class CronetUrlRequestContext extends CronetEngine { |
@NativeClassQualifiedName("CronetURLRequestContextAdapter") |
private native void nativeProvideThroughputObservations(long nativePtr, boolean should); |
+ |
+ public boolean isNativeThread(Thread thread) { |
mef
2016/08/30 17:55:47
maybe call it isNetworkThread()? Also maybe get cu
Charles
2016/08/30 20:11:06
Renamed. The API is more flexible if I allow it to
mef
2016/08/31 18:30:11
Um, that didn't work?
Charles
2016/08/31 19:08:36
Done.
|
+ return thread == mNetworkThread; |
+ } |
} |