草庐IT

index-async

全部标签

c++ - g++ 和 clang++ 在 `std::make_index_sequence` 和 `std::index_sequence` 用于模板参数默认类型时的不同行为

另一个“g++和clang++之间谁是正确的?”C++标准专家的问题。给定以下代码#includetemplate>structfoo;templatestructfoo>{};templatevoidbar(fooconst&){}intmain(){bar(foo{});}我看到g++编译时clang++给出了以下错误tmp_003-14,gcc,clang.cpp:32:4:error:nomatchingfunctionforcallto'bar'bar(foo{});^~~tmp_003-14,gcc,clang.cpp:27:6:note:candidatetemplate

c++ - Visual Studio 2012 更新 2 中的 std::async 衰减(丢失)右值引用。任何解决方法?

考虑下面的代码:#include#includeusingnamespacestd;templatevoidTest2(futuref,Workw){async([](future&&f,Workw){},move(f),move(w));}intmain(){futurex=std::async([]()->int{std::this_thread::sleep_for(std::chrono::microseconds(200));return10;});Test2(std::move(x),[](intx){});return0;}以上,由于以下编译器错误而失败:Error1er

kotlin - 如何将 Kotlin 从 1.2 迁移到 Kotlin 1.3.0,然后在演示者函数中使用 async、UI 和 bg

我在Kotlin项目中使用MVP模式。我有一个Presenter类:importcom.google.gson.Gsonimportkotlinx.coroutines.experimental.android.UIimportkotlinx.coroutines.experimental.asyncimportorg.jetbrains.anko.coroutines.experimental.bgclassTeamsPresenter(privatevalview:TeamsView,privatevalapiRepository:ApiRepository,privatevalg

kotlin - 如何将 Kotlin 从 1.2 迁移到 Kotlin 1.3.0,然后在演示者函数中使用 async、UI 和 bg

我在Kotlin项目中使用MVP模式。我有一个Presenter类:importcom.google.gson.Gsonimportkotlinx.coroutines.experimental.android.UIimportkotlinx.coroutines.experimental.asyncimportorg.jetbrains.anko.coroutines.experimental.bgclassTeamsPresenter(privatevalview:TeamsView,privatevalapiRepository:ApiRepository,privatevalg

c++ - 如何确定 std::type_index 是否对我的编译器是唯一的?

标准是否规定std::type_index(typeid(obj))的调用对于该类型是唯一的?我找不到这方面的信息。从type_info::name()我得到了这个:Returnsanimplementationdefinednull-terminatedcharacterstringcontainingthenameofthetype.Noguaranteesaregiven,inparticular,thereturnedstringcanbeidenticalforseveraltypesandchangebetweeninvocationsofthesameprogram.(来

c++ - std::async 使用绑定(bind)到 lambda 的右值引用

我正在尝试使用std::bind将右值引用绑定(bind)到lambda,但是当我将其放入std::async调用时出现问题:(source)autolambda=[](std::string&&message){std::cout这会发出一个编译器错误,我不确定如何解释:error:notypenamed'type'in'classstd::result_of(std::basic_string)>&()>'这是怎么回事?有趣的是,稍作修改就可以按预期编译和工作。如果我将std::string{"helloworld"}更改为c字符串文字,一切正常:(source)autolambd

c++ - std::async 使用同一个线程,我的代码没有实现并行。

我在MacOSXcode4.3.2上使用C++11std::async使用同一个线程,我的代码没有实现并行。在下面的示例代码中,我想创建10个新线程。在每个线程中,我想计算输入变量的平方根并将结果设置为promise。在main函数中,我想显示从线程计算的结果。我正在使用策略launch::async调用std::async,所以我希望它创建一个新线程(10次)。#include#include#include#include#include#includeusingnamespacestd;mutexiomutex;voidfoo(inti,promise&&prms){this_t

c++ - boost 等效于 std::async()

如果不直接使用boost::thread和boost::bind,有没有办法实现以下代码的等价物?std::stringfunc(){std::stringstr("Hellofromasynctask!");returnstr;}intmain(){autoftr=std::async(&func);std::cout具体来说,这部分:autoftr=std::async(&func);? 最佳答案 当然。只需制作async(std::function)返回调用func()的future第一次等待的那一刻。您不会获得任何异步性,但

[MySQL] 解决办法:mysqld: File ‘.\binlog.index‘ not found (OS errno 13 - Permission denied)

真的是日了狗,在LinuxRedhat环境上安装完MySQL8启动的时候出现这个错误,搞了很久一会排查,一直出现这个错误,当时都想重装MySQL了,最后还好得以解决。记录出来,希望能够帮到遇到同样问题的兄弟们,来节省时间。如果解决了你的问题,麻烦给本文留言回复下"有用",举手之劳可以帮助更多的人,谢谢~问题描述:Linux环境下,启动mysql8出现如下错误:mysqld:File'.\binlog.index'notfound(OSerrno13-Permissiondenied)排查过程:开始一直以为是安装后MySQL的数据文件或者在my.cnf中配置的一些路径所属权限错误。各种检查后,可

c++ - GCC 对 std::async(std::launch::async) 的行为与 Clang 的行为

有没有人有使用相当新的std::async的经验?我们目前正在实现一个并行文件解析器,它读取一个文件block并将该block传递给一个异步函数。以这种方式使用Clang(v3.0)与默认的std::async策略(依赖于实现)一起工作得很好。在双核机器上,它最多可触发4个线程,效果非常好。但是对于GCC(v4.7),文件读取线程不会产生任何新线程,从而使程序最终完全按顺序执行。使用std::launch::async,两个版本几乎都在做同样的事情(应该是这样)。有谁知道GCC的c++11线程功能的当前状态?或者这可能是我们实现中的错误?短代码:while(readNewChunk()