相关疑难解决方法(0)

多核和并发 - 语言,库和开发技术

CPU架构格局发生了变化,多核心趋势将改变我们开发软件的方式.我已经完成了C,C++和Java的多线程开发,我使用各种IPC机制完成了多进程开发.对于开发人员来说,使用线程的传统方法似乎并不容易使用支持高度并发性的硬件.

您了解哪些语言,库和开发技术有助于缓解创建并发应用程序的传统挑战?我显然在考虑死锁和竞争条件等问题.设计技术,库,工具等也很有趣,它们有助于实际利用并确保可用资源的利用 - 只需编写一个安全,健壮的线程应用程序并不能确保它使用所有可用的内核.

到目前为止我看到的是:

  • Erlang:基于流程,消息传递IPC,'actor的并发模型
  • Dramatis:Ruby和Python的actor模型库
  • Scala:JVM的函数编程语言,增加了一些并发支持
  • Clojure:具有actor库的JVM的函数编程语言
  • 白蚁:Erlang的流程方法和传递给Scheme的消息的端口

您还知道什么,对您有用的内容以及您认为有趣的内容是什么?

concurrency programming-languages functional-programming multicore

35
推荐指数
4
解决办法
5923
查看次数

英特尔的线程构建模块"运行时异常"许可证:这是什么意思?

刚看过线程构建块,作为他们的许可证,他们说这是带有运行时异常的GPLv2 .在英特尔页面本身,他们说如果您需要商业支持,商业许可是正确的.

那么如果我正在做一个使用TBB的商业,封闭源应用程序,但是我不需要商业支持,这是什么交易?我还可以使用开源版本,还是我需要购买商用版本?

毕竟,我假设我可以在没有限制的商业应用程序中使用libstdc ++(即链接它).

licensing gpl tbb

20
推荐指数
1
解决办法
3768
查看次数

并发与并行 - 特别是在C++中

我理解两者之间的基本区别,我经常在程序中使用std :: async,这给了我并发性.

是否有任何可靠/值得注意的库可以在C++中提供并行性?(我知道这可能是C++的一个特色17).如果是这样,您对它们的体验是什么?

谢谢!芭芭拉

c++ parallel-processing concurrency c++-standard-library

4
推荐指数
1
解决办法
1470
查看次数