小编And*_*ein的帖子

为什么我更新的Eclipse/Android设置不再构建我的APK了?

我有一个使用版本11的3.6.2和SDK工具的Eclipse设置,它已经构建了我的主项目很长一段时间.

对于一个不同的项目,我认为我需要将我的SDK升级到最新和最好的 - 此时API 14(ICS 4.0).

我甚至无法重建我经历的步骤,但发生的事情是我的项目似乎要构建,但我会发现它会说它正在跳过后编译器步骤,最后我将没有APK.

我还注意到它更新了我的.classpath,因此输出路径是bin/classes而不是.bin.

一路上我尝试将Eclipse更新到最新版本(Indigo 3.7.1),但这没有用.

eclipse android classpath apk eclipse-indigo

12
推荐指数
1
解决办法
1万
查看次数

提升线程:在IOS中,thread_info对象在线程完成执行之前被破坏

我们的项目在几个平台上使用了几个boost 1.48库,包括Windows,Mac,Android和IOS.我们能够在使用IOS时始终让项目的IOS版本崩溃(非常可靠但可靠),并且从我们的调查中我们看到〜thread_data_base在线程的thread_info上被调用,而其线程仍然在运行.

这似乎是由于智能指针达到零计数而发生的,即使它显然仍在thread_proxy函数中的范围内,该函数创建它并在线程中运行所请求的函数.这似乎发生在各种情况下 - 崩溃之间的调用堆栈不相同,尽管有一些常见的变化.

需要明确的是 - 这通常需要运行代码来创建数百个线程,尽管同时运行的时间绝不会超过30个.我很幸运,并且在跑步的早期也得到了,但这种情况很少见.我创建了一个析构函数的版本,它实际上捕获了代码:

在libs/thread/src/pthread/thread.cpp中:

thread_data_base::~thread_data_base()
 {
   boost::detail::thread_data_base* const thread_info=detail::get_current_thread_data();
   void *void_thread_info = (void *) thread_info;
   void *void_this = (void *) this;
   // is somebody destructing the thread_data other than its own thread?
   // (remember that its own which should no longer point to it anyway,
   // because of the call to detail::set_current_thread_data(0) in thread_proxy)
   if (void_thread_info) { //  == void_this) {
     __builtin_trap();
   }
 }
Run Code Online (Sandbox Code Playgroud)

我应该注意(从已注释掉的代码中看到)我之前检查过void_thread_info == void_this,因为我只检查线程的当前thread_info是否自杀的情况.我也看到过get_current_thread_data返回的值非零且与"this"不同的情况,这真的很奇怪.

当我第一次编写该版本的代码时,我写道:

if (((void*)thread_info) == ((void*)this)) 
Run Code Online (Sandbox Code Playgroud)

在运行时,我得到了一些非常奇怪的异常,我说了一些虚拟功能表或类似的东西 - 我不记得了.我决定尝试为这个对象类型调用"=="并且对此不满意,所以我重写了上面的内容,将转换为void*作为单独的代码行.这本身对我很怀疑.我不是一个急于责怪编译器的人,但...... …

c++ multithreading boost ios

8
推荐指数
1
解决办法
2391
查看次数

如何在 Android Studio 中按名称搜索文件

我正在一个具有丰富文件结构的大型遗留项目中工作。我知道我需要编辑的文件的名称。但我不记得它在树的什么地方了!在 XCode 中,我将在项目文件视图中使用过滤器。但是Android Studio中好像没有类似的东西。我该怎么办?

android android-studio

2
推荐指数
1
解决办法
2585
查看次数