public void stop() { for (NetworkDispatcher mDispatcher : mDispatchers) { if (mDispatcher != null) { mDispatcher.quit(); } } }
public void start() { // 有没停止的任务先全都停掉 stop(); for (int i = 0; i < mDispatchers.length; i++) { NetworkDispatcher networkDispatcher = new NetworkDispatcher(mNetworkQueue, mNetWorker, mDelivery); mDispatchers[i] = networkDispatcher; networkDispatcher.start(); } }
/** Starts the dispatchers in this queue. */ public void start() { stop(); // Make sure any currently running dispatchers are stopped. // Create the cache dispatcher and start it. mCacheDispatcher = new CacheDispatcher(mCacheQueue, mNetworkQueue, mCache, mDelivery); mCacheDispatcher.start(); // Create network dispatchers (and corresponding threads) up to the pool // size. for (int i = 0; i < mDispatchers.length; i++) { NetworkDispatcher networkDispatcher = new NetworkDispatcher(mNetworkQueue, mNetwork, mCache, mDelivery); mDispatchers[i] = networkDispatcher; networkDispatcher.start(); } }
private void dispatchSomePendingEvents(boolean flag) throws IOException, ParseException, HttpException { if (GoogleAnalyticsTracker.getInstance().getDebug() && flag) { Log.v("GoogleAnalyticsTracker", "dispatching events in dry run mode"); } int i = 0; while (i < events.size() && i < maxEventsPerRequest) { Event event = (Event)events.get(i); String s; BasicHttpRequest basichttprequest; if ("__##GOOGLEPAGEVIEW##__".equals(event.category)) { s = NetworkRequestUtil.constructPageviewRequestPath(event, referrer); } else if ("__##GOOGLETRANSACTION##__".equals(event.category)) { s = NetworkRequestUtil.constructTransactionRequestPath(event, referrer); } else if ("__##GOOGLEITEM##__".equals(event.category)) { s = NetworkRequestUtil.constructItemRequestPath(event, referrer); } else { s = NetworkRequestUtil.constructEventRequestPath(event, referrer); } basichttprequest = new BasicHttpRequest("GET", s); basichttprequest.addHeader("Host", NetworkDispatcher.access$200().getHostName()); basichttprequest.addHeader("User-Agent", userAgent); if (GoogleAnalyticsTracker.getInstance().getDebug()) { Log.i("GoogleAnalyticsTracker", basichttprequest.getRequestLine().toString()); } if (flag) { requesterCallBacks.requestSent(); } else { pipelinedRequester.addRequest(basichttprequest); } i++; } if (!flag) { pipelinedRequester.sendRequests(); } }