问题标签 [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.
c++ - 使用 Folly Futures 时的编译问题
LD_LIBRARY_PATH
被设定为/usr/local/lib
当我编译时,使用
我收到此错误消息:
c++ - 如何将 boost::lexical_cast 与 folly::fbstring 一起使用?
以下程序:
给出这个输出:
这是因为lexical_cast
没有意识到这fbstring
是一个string
-like 类型,而只是将stream << in; stream >> out;
其转换为通常的类型。但是operator>>
对于字符串在第一个空格处停止,lexical_cast
检测到整个输入没有被消耗,并抛出异常。
有什么方法可以教授lexical_cast
(fbstring
或更一般地说,任何string
类似的类型)?
c++ - SDL2 程序链接到 jemalloc 在 Mac os x 但不是 ubuntu 上崩溃
我按照本教程使用 SDL2 设置了一个非常简单的 opengl 程序。为了这个问题,我删除了部分内容。程序打开一个窗口,将背景颜色设置为红色,然后循环直到按下退出键。
当我在我的 mac 上使用 clang 编译时,该程序可以编译、链接和工作
但是,如果我尝试链接Facebook 的 Folly,如下所示:
该程序仍然可以成功编译和链接。但是,当我运行该程序时,它每次都会在几秒钟后崩溃。lldb 显示以下内容:
我的模糊理解是 SDL2 是动态链接的,在阅读了这个答案之后,我假设当我链接愚蠢时,我使用的某些库的实现与我不链接愚蠢时不同。我也不确定它是否相关,但我能够编译上面的代码并链接到我的 Ubuntu 桌面上的愚蠢,并且生成的二进制文件可以毫无问题地运行。为了在 Mac 10.11.5 上同时使用 SDL2 和愚蠢,我需要做什么?
c++11 - 递归变量声明
我刚刚在folly/ManualExecutor.h中看到了这个黑魔法
在我对整个库源代码进行 grep 处理后,now_
除了这里,我还没有在其他任何地方看到该变量的定义。这里发生了什么事?这实际上是某种递归变量声明吗?
folly - 使用连接池的 Proxygen http 客户端(保持活动状态)
我正在编写一个需要向其他服务发出 http 请求的代理服务器。我想有一个到这个其他服务的连接池(使用keep-alive),每当我需要向这个服务发出请求时,我想达到其中一个连接的峰值并发出请求。然后,在请求完成后,将此连接返回到池中以便可以重用。我在proxygen项目的示例中阅读了curl客户端,但这只会发出一个请求并关闭连接。谁能给我一些关于如何制作一个使用 proxygen/folly 处理连接池的 http 客户端的见解?proxygen/folly 有处理连接池的方法吗?在那种情况下,我可以在哪里阅读它?
提前致谢
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 上执行。
帮助?
c++ - c++ 在愚蠢队列的 write() 函数中使用 new 关键字
我正在审查 Facebook 愚蠢的无锁队列,但不熟悉他们使用的方法。
在 write() 函数中,它们使用语法
我会期待更多类似的东西
我知道我错过了一些东西,但是如果有人可以解释一下new
这里的用法,因为我认为创建堆变量会产生开销后果。
https://github.com/facebook/folly/blob/master/folly/ProducerConsumerQueue.h
谢谢!
c++ - Facebook 愚蠢的大端和小端
我已经阅读了Facebook创建的folly代码,在这个页面https://github.com/facebook/folly/blob/master/folly/FBString.h,我发现作者在设置一些时考虑了big endian和little endian值,如容量_,代码如下:</p>
我想知道为什么作者要考虑大端和小端,我认为我们不需要在同一台机器上考虑它们,获取和设置值由机器处理,我们可以忽略它们
c++ - Facebook 愚蠢::AccessSpreader 是如何工作的?
以下是 Facebook Folly 库中 AccessSpreader 的代码: https ://github.com/facebook/folly/blob/master/folly/concurrency/CacheLocality.h#L212
据我了解,它应该将一些数据包装在一个原子类中,并且当它被多个线程访问时,它应该减少错误的缓存共享吗?与 Folly 合作过的人能否详细说明它的工作原理?我已经看了一段时间了,我什至没有看到他们把原子变量成员放在哪里。
c++11 - 如何在 Folly Dynamic 中附加对象?
如何将值附加到动态对象中?
如果我这样做:
我正进入(状态
由于我在迭代值并在其中添加键和值,我如何获得
我环顾四周,我没有看到 append 方法,支持在创建时添加多个值,但我需要它来完成迭代