- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
让我们看一下这个代码示例:
#include <iostream>
int main() {
std::ios_base::sync_with_stdio(false);
int n;
std::cin >> n;
for (int i = 0; i < n; ++i) {
int buf;
std::cin >> buf;
}
}
此代码示例对这样的输入的性能:
10000000
0
1
...
9999999
在我的机器上:
g++-5 -O2 -std=c++11:
./a.out < input.txt 0.86s user 0.07s system 98% cpu 0.942 total
clang-700.0.72 -O2 -std=c++11:
./a.out < input.txt 38.69s user 0.21s system 99% cpu 39.248 total
经过一些分析后,我发现 libc++ 根本没有禁用同步。
然后我查看了他们的代码,发现了这个: https://github.com/llvm-mirror/libcxx/blob/6a85e8a355be05b9efa8408f875014e6b47cef3b/src/ios.cpp#L458
所以我的问题是,这是设计使然还是错误?
最佳答案
sync_with_stdio
据我所知只是一个建议函数。
ios.members.static/2 说:
Effects: If any input or output operation has occurred using the standard streams prior to the call, the effect is implementation-defined. Otherwise, called with a false argument, it allows the standard streams to operate independently of the standard C streams.
恕我直言,“允许……独立运作”是关键。
没有对实现实际执行此操作的要求,而是禁止执行此操作,除非已进行此调用。
所以,是的,这是顺从行为。
关于c++ - 为什么 std::ios_base::sync_with_stdio 没有在 libc++ (clang) 中实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33837349/
我正在使用 Gunicorn 为 Django 应用程序提供服务,它工作正常,直到我将其超时时间从 30 秒更改为 900000 秒,我不得不这样做,因为我有一个用例需要上传和处理一个巨大的文件(过程
我有一个带有非常基本的管道的Jenkinsfile,它可以旋转docker容器: pipeline { agent { dockerfile { args '-u root' } } stag
在学习 MEAN 堆栈的过程中,我遇到了一个问题。每当我尝试使用 Passport 验证方法时,它都不会返回任何响应。我总是收到“localhost没有发送任何数据。ERR_EMPTY_RESPONS
在当今的大多数企业堆栈中,数据库是我们存储所有秘密的地方。它是安全屋,是待命室,也是用于存储可能非常私密或极具价值的物品的集散地。对于依赖它的数据库管理员、程序员和DevOps团队来说,保护它免受所
是否可以创建像图片上那样的边框?只需使用 css 边框属性。最终结果将是没 Angular 盒子。我不想添加额外的 html 元素。我只想为每个 li 元素添加 css 边框信息。 假设这是一个 ul
我是一名优秀的程序员,十分优秀!