1

我目前正在开发一个链接到 MariaDB C 连接器的 Objective-C 库。不过,我相信图书馆有问题。

每次我执行我的代码时,我都会在控制台上遇到非常奇怪的错误。-(id)init我的库调用初始化库的方法,mysql_init(NULL)但是一旦我从控制台返回,-(id)init我就会在控制台中收到以下错误:

Object 0x10643df70 of class XXX autoreleased with no pool in place - just leaking - break on objc_autoreleaseNoPool() to debug

问题是,没有正在执行的多线程代码,如果我在- (id)init没有调用mysql_init(NULL)错误的情况下运行相同的代码,就会消失。我相信 libmariadb 库导致出现这些错误。我不明白为什么。

我是否需要使用任何特殊的命令行开关来构建它?我在调用正确的方法吗?我显然使用了 MySQL 在线文档作为指南。

4

3 回答 3

0

我有一段时间忙于其他事情。我已经将 MariaDB 更新到了最新版本,据我所知,它运行良好。

于 2014-01-03T12:04:33.093 回答
0

Make sure you add this anytime you have a new thread:

@autoreleasepool {

//enter code here
}
于 2013-09-15T01:46:33.600 回答
0

您是否尝试过启动板的最新版本?还尝试使用 -DUNDEF_THREADS_HACK 和 CMAKE_USE_PTHREADS:BOOL=OFF 构建 libmariadb

于 2013-09-30T09:32:42.983 回答