base: Make SequencedWorkerPool issue globally unique SequenceTokens.

SequencedWorkerPool currently issues SequenceTokens out of an internal member counter. This means that two different SequencedWorkerPool instances can issue identical SequenceTokens, which mucks up any attempt to distinguish sequences using only SequenceTokens.

This change makes the SequenceTokens issued from an StaticAtomicSequenceNumber, which is globally shared amongst all SequencedWorkerPools.

This change also makes the SequencedWorkerPool included in the nacl_untrusted builds, as it is needed for SequenceChecker and WeakPtr to work correctly. It previously was excluded because it used base/metrics. I've #ifdefed the base/metrics usage out for nacl.

This issue is a spinoff and pre-requisite of issue 18501008: Make WeakPtr use SequenceChecker instead of ThreadChecker.

R=akalin,darin
BUG=165590

Review URL: https://chromiumcodereview.appspot.com/18650006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210423 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: b7c0fb6db7ae85f1c9ce1190edf5176b2eaa371b
4 files changed
tree: a0989b3c1b2d60bb9a74d8ec2863c701a21987d3
  1. base/
  2. build/
  3. dbus/
  4. ipc/
  5. testing/
  6. third_party/