[英]Implementing threads using C++
我的应用程序中有一个API调用,我在其中检查单个调用所花费的时间。 我将其放在FOR循环中,并使用10000次调用来获取所有调用的平均时间。 现在出现的问题是使用该API的实际应用程序是多线程的。 如果我希望我的应用程序也做同样的事情,我将如何做呢?
该平台是REL,我的目标是使用相同的参数或不同的参数同时发送多个呼叫。 可以用C ++实现吗?如果可以,可以使用哪些库函数,是否可以提供一个示例?
最好的用于线程化的C ++库是Boost中的线程库,但是像所有C ++线程一样,您将被迫手动进行同步。 您将需要使用互斥锁和锁定类型来使其正常工作。 您的问题不是很清楚,所以我真的无法再为您提供帮助(尽管我认为您实际上不需要线程,但是我可能会完全误解)。
如果您阅读Miranda IM源代码,它将带您入门。 这做得很好,代码中有一些很好的提示,说明如何重新设置其他可执行文件的内存偏移量(在Windows上),以使它们更快地加载。
我不知道REL平台。
我可能会建议使用OMP替代方案,它并不是每个人所说的Threads,但它确实可以完成工作,并且在这种情况下非常容易使用。 显然,它可以在许多编译器上运行。
在什么平台上? 几乎每个人都支持线程,我想他们都拥有有关如何创建线程的文档。 在Windows下,您可以调用CreateThread API。
Pthreads是您如何在Linux上实现的。 Solaris的Solaris线程。
我对REL平台不熟悉。 总的来说,我更喜欢使用英特尔的TBB作为线程,但是目前它仅在x86芯片上运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.