问题标签 [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.

0 投票
1 回答
840 浏览

c++ - 使用 Folly Futures 时的编译问题

LD_LIBRARY_PATH被设定为/usr/local/lib

当我编译时,使用

我收到此错误消息:

0 投票
1 回答
288 浏览

c++ - 如何将 boost::lexical_cast 与 folly::fbstring 一起使用?

以下程序:

给出这个输出:

这是因为lexical_cast没有意识到这fbstring是一个string-like 类型,而只是将stream << in; stream >> out;其转换为通常的类型。但是operator>>对于字符串在第一个空格处停止,lexical_cast检测到整个输入没有被消耗,并抛出异常。

有什么方法可以教授lexical_castfbstring或更一般地说,任何string类似的类型)?

0 投票
1 回答
294 浏览

c++ - SDL2 程序链接到 jemalloc 在 Mac os x 但不是 ubuntu 上崩溃

我按照本教程使用 SDL2 设置了一个非常简单的 opengl 程序。为了这个问题,我删除了部分内容。程序打开一个窗口,将背景颜色设置为红色,然后循环直到按下退出键。

当我在我的 mac 上使用 clang 编译时,该程序可以编译、链接和工作

但是,如果我尝试链接Facebook 的 Folly,如下所示:

该程序仍然可以成功编译和链接。但是,当我运行该程序时,它每次都会在几秒钟后崩溃。lldb 显示以下内容:

我的模糊理解是 SDL2 是动态链接的,在阅读了这个答案之后,我假设当我链接愚蠢时,我使用的某些库的实现与我不链接愚蠢时不同。我也不确定它是否相关,但我能够编译上面的代码并链接到我的 Ubuntu 桌面上的愚蠢,并且生成的二进制文件可以毫无问题地运行。为了在 Mac 10.11.5 上同时使用 SDL2 和愚蠢,我需要做什么?

0 投票
2 回答
2853 浏览

c++11 - 递归变量声明

我刚刚在folly/ManualExecutor.h中看到了这个黑魔法

在我对整个库源代码进行 grep 处理后,now_除了这里,我还没有在其他任何地方看到该变量的定义。这里发生了什么事?这实际上是某种递归变量声明吗?

0 投票
0 回答
415 浏览

folly - 使用连接池的 Proxygen http 客户端(保持活动状态)

我正在编写一个需要向其他服务发出 http 请求的代理服务器。我想有一个到这个其他服务的连接池(使用keep-alive),每当我需要向这个服务发出请求时,我想达到其中一个连接的峰值并发出请求。然后,在请求完成后,将此连接返回到池中以便可以重用。我在proxygen项目的示例中阅读了curl客户端,但这只会发出一个请求并关闭连接。谁能给我一些关于如何制作一个使用 proxygen/folly 处理连接池的 http 客户端的见解?proxygen/folly 有处理连接池的方法吗?在那种情况下,我可以在哪里阅读它?

提前致谢

0 投票
0 回答
65 浏览

ubuntu-14.04 - fbthrift 愚蠢/愚蠢/统计/测试不会在 Ubuntu 14.04 上构建

我们安装了 Ubuntu 14.04。

我们想在那里安装 fbthrift。

我们做了 fbthrift 的 git clone。

然后我们对 v2017.06.05.00 版本进行了 git checkout。

我们按照 README.md 中的指导,运行名为 ./build/deps_ubuntu_14.04.sh 的脚本

它在尝试构建 fbthrift/thrift/build/deps/folly/folly/stats/test 时死掉,说“***没有规则使目标成为‘全部’。停止。”

它刚刚在 .../folly/folly/io/test 中成功构建。

有趣的是,io/test 有一个 Makefile.am、一个 Makefile.in 和一个 Makefile。stats/test 只有一个 Makefile.am。

我不知道在这个自动化脚本中,“autoconf”和“automakers”步骤应该在 stats/test 上执行。

帮助?

0 投票
0 回答
21 浏览

c++ - c++ 在愚蠢队列的 write() 函数中使用 new 关键字

我正在审查 Facebook 愚蠢的无锁队列,但不熟悉他们使用的方法。

在 write() 函数中,它们使用语法

我会期待更多类似的东西

我知道我错过了一些东西,但是如果有人可以解释一下new这里的用法,因为我认为创建堆变量会产生开销后果。

https://github.com/facebook/folly/blob/master/folly/ProducerConsumerQueue.h

谢谢!

0 投票
1 回答
160 浏览

c++ - Facebook 愚蠢的大端和小端

我已经阅读了Facebook创建的folly代码,在这个页面https://github.com/facebook/folly/blob/master/folly/FBString.h,我发现作者在设置一些时考虑了big endian和little endian值,如容量_,代码如下:</p>

我想知道为什么作者要考虑大端和小端,我认为我们不需要在同一台机器上考虑它们,获取和设置值由机器处理,我们可以忽略它们

0 投票
1 回答
554 浏览

c++ - Facebook 愚蠢::AccessSpreader 是如何工作的?

以下是 Facebook Folly 库中 AccessSpreader 的代码: https ://github.com/facebook/folly/blob/master/folly/concurrency/CacheLocality.h#L212

据我了解,它应该将一些数据包装在一个原子类中,并且当它被多个线程访问时,它应该减少错误的缓存共享吗?与 Folly 合作过的人能否详细说明它的工作原理?我已经看了一段时间了,我什至没有看到他们把原子变量成员放在哪里。

0 投票
1 回答
1819 浏览

c++11 - 如何在 Folly Dynamic 中附加对象?

如何将值附加到动态对象中?

如果我这样做:

我正进入(状态

由于我在迭代值并在其中添加键和值,我如何获得

我环顾四周,我没有看到 append 方法,支持在创建时添加多个值,但我需要它来完成迭代