A call to
Thread::yield();
means a call of a method named yield which is enclosed in Thread
class or namespace ( it can be global method just enclosed in a namespace). The name yield suggests it is a call made to give up the CPU cycles and enable other threads running.
Search in your project for Thread and you will find what it is exactly. Method named yield should be present within Thread
class or namespace.
What is :: ?
:: is a scope resolution operator
C++ Standard n3337 § 3.4.3 Qualified name lookup
The name of a class or namespace member or enumerator can be referred
to after the :: scope resolution operator (5.1) applied to a
nested-name-specifier that denotes its class, namespace, or
enumeration. If a :: scope resolution operator in a
nested-name-specifier is not preceded by a decltype-specifier, lookup
of the name preceding that :: considers only namespaces, types, and
templates whose specializations are types. If the name found does not
designate a namespace or a class, enumeration, or dependent type, the
program is ill-formed.[ Example:
class A {
public:
static int n;
};
int main() {
int A;
A::n = 42; // OK
A b; // ill-formed: A does not name a type
}
—end example ]
https://stackoverflow.com/a/9338301/1141471