草庐IT

thread_safe

全部标签

android - toast "sending message to a Handler on a dead thread"

我正在尝试通过Toast显示一条简单的消息,并收到运行时异常“向死线程上的处理程序发送消息”。试图显示Toast消息的类扩展了IntentService。类(C2DMReceiver)实际上来自C2DM的ChromeToPhone示例。方法如下:/***Calledwhenacloudmessagehasbeenreceived.*/@OverridepublicvoidonMessage(Contextcontext,Intentintent){Log.i(LOG_TAG,"Amessagenotificationhasoccuredwiththecloud.");Log.i(LOG

RT-Thread studio使用(持续更新)

文章目录1、RT-Threadstudio下载安装1-1、官网下载安装包:1-2、安装:1-3、注册登录:2、新建RT-Threadnano工程2-1、新建nano工程2-2、连接硬件,下载到板子上测试(选择的是stm32f103c8t6)3、用RT-Threadstudio创建的nano工程的文件解读4、基于RT-Threadnano添加Finsh(实现命令输入)4-1、什么是Finsh4-2、基于Nano添加FinSH(用RT-Threadstudio)5、【问题】怎么用RT-Threadstudio打开已经创建好的RT-Thread项目工程;6、【问题】怎么查找打开指定内容7、【问题】项

android - CalledFromWrongThreadException : Only the original thread that created a view hierarchy can touch views

我在Android中遇到以下错误:CalledFromWrongThreadException;:Onlytheoriginalthreadthatcreatedaviewhierarchycantouchitsviews当我尝试在我的Activity中更新Textview时似乎会发生这种情况,更新TextView的调用来self的Activity但我仍然收到上述错误。我是这样的:onCreate()-设置按钮和TextView。onStateChange()-状态更改通知的监听器,当它在TextView更改为说一些不同的文本时收到通知。当我收到新文本的通知时,我尝试将TextView

android - 在 Android 中从 Thread 更新 UI

我想从更新进度条的线程更新我的UI。不幸的是,当从“runnable”更新进度条的drawable时,进度条消失了!在另一边的onCreate()中更改进度条的可绘制对象有效!有什么建议吗?publicvoidonCreate(BundlesavedInstanceState){res=getResources();super.onCreate(savedInstanceState);setContentView(R.layout.gameone);pB.setProgressDrawable(getResources().getDrawable(R.drawable.green));

c++ - Mac OS X : is it possible to imbue a non-main thread to become "The Main Thread" of a process?

我在MacOSX(10.6.7)下遇到了与GUI/线程相关的问题。我正在使用wxWidgets框架(版本2.9.1),在我的例子中它依赖于Cocoa。应用设计是这样的:线程#1(又名“主线程”):进入main(),解析开关,并在必要时启动另一个线程(使用POSIX原语)。线程#2(又名“GUI线程”):使用wxEntry初始化wxWidgets并显示GUI。与大多数其他GUI框架一样,Cocoa不是线程安全的,因此我们确保在线程#2中执行所有GUI调用,并在需要时传递消息。然而,在这种特殊情况下,在初始化期间(从NSUndoManager更准确地说)从Cocoa内部提出了一个断言,本质

c++ - XCode std::thread C++

对于一个学校的小项目,我需要创建一个简单的客户端/服务器结构,它将在路由器上运行(使用openWRT),我正在尝试在这个应用程序中使用线程做一些事情。我的C++技能非常有限,所以我在internet上找到了这个作为一个基本的例子。#include#includevoiddoSomeWork(void){std::cout当我尝试在Xcode(4.5.2)中运行它时,我收到以下错误:Attempttouseandeletedfunction它显示了一些代码:__threaad_execute(tuple&__t,__tuple_indices){__invoke(_VSTD::move(

c++ - 在 VS1012 中使用 std::move 将 std::unique_ptr 发送到 std::thread

在VisualStudio2012中出现以下错误。voiddo_something(std::unique_ptri);std::unique_ptri(newint);std::thread(do_something,std::move(i));Error3errorC2248:'std::unique_ptr::unique_ptr':cannotaccessprivatememberdeclaredinclass'std::unique_ptr'c:\programfiles(x86)\microsoftvisualstudio11.0\vc\include\functional

c++ - C++11 认为 "thread"是什么?

C++11有一些线程的概念。例如,它定义了一个新的存储说明符thread_local,并指定对于具有此存储说明符的变量,“每个线程都有一个不同的对象或引用”[basic.stc.thread]。为此目的,什么被视为“线程”?是否只有使用标准线程库创建的线程(即由std::thread对象表示的线程)?通过其他方式创建的线程(例如,直接在Linux上使用pthreads)呢?如果我使用提供用户空间线程的库怎么办?每个线程都有自己的thread_local拷贝吗?对象(我真的不明白如何实现)?如果答案是“它是由实现定义的,出于诸如thread_local之类的目的而被视为线程”,有人可以举

c++ - Boost Thread 的 boost::unique_lock 是作用域锁吗?

我了解由boost::mutex::scoped_lock锁定的变量在超出范围时会自动解锁。boost::unique_lock怎么样,变量超出范围时会自动解锁吗?任何人也可以指出该功能的引用。doublex;boost::mutexx_mutex;voidfoo(){{boost::unique_locklock(x_mutex);x=rand();}......somecalculationwhichtakes10second............isxstilllockedhere???......}谢谢。 最佳答案 sco

c++ - std::thread 使用带有 ref arg 的 lambda 编译失败

我正在阅读C++concurrencyinaction.第2.4章介绍了一种parallell_accumulate算法。我尝试(作为学习实验)用通用lambda替换那里使用的仿函数。我将编译错误归结为:#includetemplatestructf{voidoperator()(T&result){result=1;}};intmain(){intx=0;autog=[](auto&result){result=1;};std::thread(f(),std::ref(x));//COMPILESstd::thread(g,std::ref(x));//FAILSTOCOMPILE}