如何从字符串中回滚 Boost::thread::id?

Posted

技术标签:

【中文标题】如何从字符串中回滚 Boost::thread::id?【英文标题】:How to cast back Boost::thread::id from string? 【发布时间】:2011-08-21 03:27:38 【问题描述】:

所以我将 boost::lexical_cast<std::string>(boost::this_thread::get_id()) 这个线程 id 转换为字符串。现在我想知道是否可以将其转回 thread::id ?

【问题讨论】:

@JackOfAllTrades:我的 id 到字符串?是的here,而且,你知道,它加快了速度! (10%) (遍历字符串映射而不是线程映射::id)。但是在那之后你可以理解你可能还需要一件事 - 中断线程链接,你只能以字符串的形式访问......并且调用 ->interrupt 你需要真正的 thread::id - 而不是字符串。跨度> 【参考方案1】:

既然你提到调用 -> 中断,我假设你需要 boost::thread 对象,而不是 boost::thread:id 对象。

您最好的选择可能是在生成线程时创建字符串的映射 - boost::thread 对象。

【讨论】:

【参考方案2】:

我认为您可以使用 'boost::lexical_cast' 将字符串转换为 int/short/the_type_you_want。它看起来像这样:

boost::lexical_cast<int>(string_of_thread_id);

【讨论】:

以上是关于如何从字符串中回滚 Boost::thread::id?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 googleplay 中回滚 apk 版本? [复制]

如何在 PostgreSQL 中回滚更新

如何检测用户是不是在 UIScrollView 中回滚了一个视图?

如何使用@Async 和@Transactional 在多线程中回滚?

如何在SQL Server 2005中回滚UPDATE查询?

如何在 SQL Server 中回滚或提交事务