Telemetry: Handle 'None' thread-durations.

This handles platforms that don't support thread-duration. If
only some events have duration but no thread-duration, that's
likely a bug, so we treat that as thread-duration not being
supported (TBD what we should do if that continues on linux).

BUG=329059

Review URL: https://codereview.chromium.org/115033006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241373 0039d316-1c4b-4281-b951-d872f2087c98
Add a preference (proxy.quick_check_enabled, default true) to control QuickCheck.

Add a quick_check_enabled_ property to ProxyScriptDecider, InitProxyResolver,
ProxyScriptDeciderPoller and ProxyService. Set the property as appropriate in
ProxyServiceFactory.

The main design wrinkle here is that we can't access the pref service directly in ProxyServiceFactory::CreateProxyService, since the pref service has to be accessed entirely on the UI thread. We could post a task onto the UI thread to fetch the necessary prefs for us, but that entails blocking the IO thread on the UI thread while we wait for the response. Instead, we fetch the necessary pref values at the call sites of CreateProxyService() (IOThread and ProfileIOData), both of which have UI thread initialization methods.

TEST=trybot,unit
BUG=320696

Review URL: https://codereview.chromium.org/114193004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241374 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 241374