问题标签 [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 投票
0 回答
57 浏览

c++ - facebook 愚蠢的 SingletonThreadLocal 令人惊讶的设计

愚蠢的 SingletonThreadLocal 类使用两个“c11 thread_local”和一个“ThreadLocal”来支持快速访问和销毁依赖问题。

但我无法理解“thread_local 和 ThreadLocal”的破坏顺序。

请查看评论 1、2. LocalLifetime LocalCache 的破坏顺序,而 ThreadLocal 是未定义的,代码可能会访问被破坏的内存,令人惊讶。

0 投票
0 回答
120 浏览

c++ - 愚蠢的危险指针实现不正确的内存屏障?

危险指针的愚蠢实现可以这样简化(当使用 Linux 上的非对称内存屏障时):

membarrier()in 3 可以与上面的 1 和 2 同步,但是 1 和 2 本身之间没有同步。

所以我想知道是否会发生以下情况:

这是一个错误还是我错过了什么?

0 投票
1 回答
63 浏览

c++ - FBString 的最大容量?

对于FBStringmax_size()只返回std::numeric_limits<size_type>::max()但是, struct MediumLarge中的capacity_的高两位用于表示 FBString 的类型(small/medium/large),这意味着 capacity_ 的最大值将为 2^62-1(64 位处理器),小于size_t的最大值。我误解了实现还是这实际上是一个错误?

0 投票
1 回答
59 浏览

xcode - 找不到 -lFolly 的库

将 react-native 从版本 0.63.2 更新到 0.66.1 后,当我尝试构建我的应用程序时,我在 Xcode 中收到以下错误。

找不到 -lFolly 的库

我试过运行pod install和清理构建文件夹。对于发布和调试,我的库搜索路径看起来像这样。

0 投票
1 回答
538 浏览

ios - Pods/RCT-Folly/folly/portability/Time.h 中的错误和不同类型的 Typedef 重新定义('uint8_t'(又名'unsigned char')与'enum clockid_t')

我正在查看 react native 项目的源代码,但在构建它时遇到了问题。

运行以下命令后

  1. npm install在项目的根
  2. pod install在 ios 文件夹中

我在终端收到以下消息:

当我使用 XCode 构建应用程序时,我在 Time.h (...Pods/RCT-Folly/folly/portability/Time.h) 处收到以下错误消息:

Typedef redefinition with different types ('uint8_t' (aka 'unsigned char') vs 'enum clockid_t')

该应用程序使用“react-native”:“0.66.1”。我正在使用 cocoapods 版本 1.11.2、节点版本 14.17.2 和 XCode 版本 13.1

Podfile 内容:

我尝试了许多类似问题的解决方案,但没有奏效。我尝试通过在 podfile 中将其注释掉来禁用 Flipper,我还尝试将目标更改为 iOS 12。我还尝试在删除 podfile.lock 并运行后安装 pod pod install --repo-update,我也运行了pod cache clean --all

我也在这里https://github.com/facebook/react-native/issues/31480尝试了解决方案,"react-native": "0.64.1" // or higher 但它对我不起作用,我不清楚他们指的是什么“从podfile.lock”,如果仍然有错误。

编辑:[解决方案] 我通过git clone [repo url]在终端中实际运行而不是使用与 VSCode 交互的 Azure DevOps 的克隆按钮来消除此错误。

0 投票
0 回答
27 浏览

c++ - Facebook 的 Folly 单生产者多消费者架构

我的目标是使用单生产者多消费者线程架构。我想使用 Folly 库。有一种数据结构叫ProducerConsumerQueue,但我认为它是用来实现一个生产者一个消费者的架构。Folly 中是否有任何队列或数据结构来实现单生产者多消费者线程架构?

0 投票
0 回答
32 浏览

centos - 在 Cent OS 中构建愚蠢时的编译器错误

在 CENTOS8 下为 MCROUTER 构建 ThriftServer 时,出现以下错误:

/usr/local/mcrouter/install/include/folly/lang/Badge.h:99:28: 错误:扩展模式 'folly::StrictDisjunction<std::is_same<OtherHolders, Holders>...>' 不包含参数包 99 | /* 隐式 */ constexpr any_badge(any_badge<OtherHolders...>) noexcept {}

它是怎么来的?我们能做什么?

在此先感谢马丁

0 投票
0 回答
21 浏览

c++ - 愚蠢的未来无法链接异步回调

我正在使用 facebook 愚蠢将 2 个 io 代码链接到一个地方,我尝试了两种不同的方法,我不知道为什么只有第二种成功,这里是代码。