问题标签 [folly]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 'folly/folly-config.h' 文件未找到
当我想通过 xcode 运行应用程序时遇到了这个问题
仅显示所有错误 /Users/ugur/Documents/Projects/MyApp/node_modules/react-native/ReactCommon/cxxreact/JSBundleType.h:10:10: 'folly/Portability.h' 文件未找到
c++ - Folly 项目的 Cmake 文件
我正在尝试编写一个玩具示例来使用 Facebook 的Folly
库。该程序引入了以下内容:
问题是我不确定编译这样的程序需要哪些库。CMakeList.txt
如果有人可以共享项目的文件,我将不胜感激Folly
。
c++ - 先前循环迭代对当前迭代执行时间的影响
我正在尝试测量folly
hashmap 中并发插入的性能。此处提供了用于此类插入的程序的简化版本:
问题是在 main 中使用这个循环会突然增加func
函数中的测量时间。也就是说,如果我直接从 main 调用函数而没有任何循环(如下所示),某些情况下的测量时间会突然减少 100 倍以上。
可能的原因
- 我在构建 hasmap 时分配了大量内存。我相信当我在循环中运行代码时,在执行循环的第二次迭代时,计算机正忙于为第一次迭代释放内存。因此,程序变得慢得多。如果是这种情况,如果有人能提出一个改变,我可以通过循环获得相同的结果,我将不胜感激。
更多细节
请注意,如果我在 main 中展开循环,我也会遇到同样的问题。也就是说,下面的程序也有同样的问题:
样本输出
第一个程序的输出如下所示:
func
单独运行main并i=2048
产生j=0.25
:
非常感谢任何评论/见解。
c++ - 愚蠢的未来如何实现链式异步回调?
我从一个 Instagram 博客中读到,在愚蠢的未来,你可以这样做:
我很好奇愚蠢的未来如何让它发挥作用。我读了一些愚蠢的未来源代码。在 then() 方法中,它在内部创建了一个 promise/future 对。我的问题是如何愚蠢地将这个内部承诺/未来与回调的返回值联系起来,以便 then() 的链可以继续?
ios - react-native 应用程序的 Pod 安装失败(NoMethodError - 未定义的方法 `basename' for #)
在 react-native 应用程序的 ios 文件夹中安装 Pod 失败,并出现以下错误:
在另一台机器上克隆时完全相同的存储库会安装所有 pod,而不会出现任何问题。我正在删除我的node_modules
,Pods/
然后运行 npm install,然后运行 pod install。它每次都给出相同的错误。
我也尝试卸载我的 cocoapods 并重新安装它。我的 cocoapods 版本是 1.8.4。我也尝试过 1.6 版。
我的系统可能有什么问题,因为相同的代码在其他计算机上运行良好。
我的 react native 项目的 podspec 文件如下:
c++ - 何时使用愚蠢的单元类型
在下面的代码片段中,我看到了这种Unit
类型,但不知道何时使用它以及它在做什么?我读了这个https://github.com/facebook/folly/blob/master/folly/Unit.h但仍然不知道如何在我的程序中使用这个单元。单元将提供哪些帮助的典型场景是什么?
c++ - C++20 协程的 Lambda 生命周期解释
Folly有一个可用于 C++20 风格协程的库。
在自述文件中声称:
重要提示:您需要非常小心临时 lambda 对象的生命周期。调用 lambda 协程返回一个 folly::coro::Task 捕获对 lambda 的引用,因此如果返回的 Task 没有立即 co_awaited,那么当临时 lambda 超出范围时,该任务将留下一个悬空引用。
我试图为他们提供的示例制作一个 MCVE,但对结果感到困惑。为以下所有示例假设以下样板:
我用地址清理器编译了以下内容,看看是否会有任何悬空引用。
编辑:澄清问题
问题:为什么第二个示例没有触发 ASAN 警告?
根据cppreference:
当协程到达 co_return 语句时,它会执行以下操作:
...
- 或为 co_return expr 调用 promise.return_value(expr),其中 expr 具有非 void 类型
- 以与创建时相反的顺序销毁所有具有自动存储持续时间的变量。
- 调用 promise.final_suspend() 和 co_await 是结果。
因此,也许在返回结果之前临时 lambda 的状态实际上并没有被销毁,因为foo
它本身是一个协程?
ASAN 错误:我假设等待协程时不存在“i”
没有错误——为什么?
ASAN 错误:与第一个示例相同的问题?
没有错误......并且为了很好的衡量,只返回一个常量(没有捕获 lambda 状态)就可以了。与第一个示例比较:
c++ - “原位没有内存分配”对于 String 的愚蠢实现意味着什么?
来自愚蠢的文档
这些“小字符串”存储在哪里?
c++ - .thenValue() 是否阻塞?
在很多地方,我发现类似:
thenValue() 是否阻塞了未来的“A”。我通读了 Folly 文档,但无法理解。 https://github.com/facebook/folly/blob/master/folly/docs/Futures.md
c++ - 无法在 Fedora 31 上安装 Folly
我无法在 Fedora 31 上编译。我安装了 fmt 并按照以下说明进行操作:
当我运行时cmake ..
,我收到以下错误: