本文整理汇总了C++中process::Future::failure方法的典型用法代码示例。如果您正苦于以下问题:C++ Future::failure方法的具体用法?C++ Future::failure怎么用?C++ Future::failure使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类process::Future
的用法示例。
在下文中一共展示了Future::failure方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Failure
Future<Nothing> _destroy(
const ContainerID& containerId,
process::Future<bool> destroyed)
{
if (destroyed.isFailed()) {
LOG(ERROR) << "Failed to destroy freezer cgroup for '"
<< containerId << "': " << destroyed.failure();
return Failure("Failed to destroy launcher: " + destroyed.failure());
}
return Nothing();
}
示例2: AwaitAssertAbandoned
::testing::AssertionResult AwaitAssertAbandoned(
const char* expr,
const char*, // Unused string representation of 'duration'.
const process::Future<T>& actual,
const Duration& duration)
{
process::Owned<process::Latch> latch(new process::Latch());
actual.onAny([=]() { latch->trigger(); });
actual.onAbandoned([=]() { latch->trigger(); });
if (!latch->await(duration)) {
return ::testing::AssertionFailure()
<< "Failed to wait " << duration << " for " << expr;
} else if (actual.isDiscarded()) {
return ::testing::AssertionFailure()
<< expr << " was discarded";
} else if (actual.isReady()) {
return ::testing::AssertionFailure()
<< expr << " is ready (" << ::testing::PrintToString(actual.get()) << ")";
} else if (actual.isFailed()) {
return ::testing::AssertionFailure()
<< "(" << expr << ").failure(): " << actual.failure();
}
CHECK_ABANDONED(actual);
return ::testing::AssertionSuccess();
}
示例3: Failure
Future<Nothing> _destroy(
const ContainerID& containerId,
const process::Future<Nothing>& destroyed)
{
if (!destroyed.isReady()) {
return Failure("Failed to destroy launcher: " +
(destroyed.isFailed() ? destroyed.failure() : "discarded"));
}
return Nothing();
}
示例4: Error
Option<Error> _check_discarded(const process::Future<T>& f)
{
if (f.isPending()) {
return Error("is PENDING");
} else if (f.isReady()) {
return Error("is READY");
} else if (f.isFailed()) {
return Error("is FAILED: " + f.failure());
} else {
CHECK(f.isDiscarded());
return None();
}
}
示例5: AwaitAssertDiscarded
::testing::AssertionResult AwaitAssertDiscarded(
const char* expr,
const char*, // Unused string representation of 'duration'.
const process::Future<T>& actual,
const Duration& duration)
{
if (!process::internal::await(actual, duration)) {
return ::testing::AssertionFailure()
<< "Failed to wait " << duration << " for " << expr;
} else if (actual.isFailed()) {
return ::testing::AssertionFailure()
<< "(" << expr << ").failure(): " << actual.failure();
} else if (actual.isReady()) {
return ::testing::AssertionFailure()
<< expr << " is ready (" << ::testing::PrintToString(actual.get()) << ")";
}
return ::testing::AssertionSuccess();
}