Merge "Changed ConnectivityService#getServiceInstance so its a singleton."

This commit is contained in:
Wink Saville
2010-09-01 15:15:06 -07:00
committed by Android (Google) Code Review

View File

@@ -105,7 +105,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
private int mNumDnsEntries;
private boolean mTestMode;
private static ConnectivityService sServiceInstance;
private static volatile ConnectivityService sServiceInstance;
private Handler mHandler;
@@ -174,11 +174,10 @@ public class ConnectivityService extends IConnectivityManager.Stub {
Looper.loop();
}
public static ConnectivityService getServiceInstance(Context context) {
ConnectivityThread thread = new ConnectivityThread(context);
thread.start();
synchronized (thread) {
public static synchronized ConnectivityService getServiceInstance(Context context) {
if (sServiceInstance == null) {
ConnectivityThread thread = new ConnectivityThread(context);
thread.start();
while (sServiceInstance == null) {
try {
// Wait until sServiceInstance has been initialized.