随机消失的结构

时间:2009-12-03 21:48:01

标签: c objective-c cocoa postgresql libpq

我已经使用libpq创建了一个与PostgreSQL接口的Objective-C类。它主要起作用,但我有一个小问题 - 连接似乎随机消失。

此类设置为在打开窗口时打开连接,并在窗口关闭之前关闭该连接。在窗口的初始化代码中,我打开连接,然后收听通知,以便我可以用PQfinnish()关闭连接。

现在,如果我打开那个窗口,我可以运行尽可能多的查询。但是,如果我关闭它并再次打开它,我会收到一个EXC_BAD_ACCESS错误。错误似乎是在libpq中,但我不知道我做错了什么 - 没有任何例子可以遵循,这使得它更难以遵循模式。

我相信连接对象似乎存在问题,但我无法确切知道所有诊断功能似乎都返回了正确的值。

Postgresql 8.0,运行在最新的OS X上,最新的Xcode和项目目标为10.5

1 个答案:

答案 0 :(得分:0)

找到答案:

崩溃的代码是从通知触发的事件中调用的。崩溃的原因是我在关闭窗口时没有从通知中心取消注册该类。

我现在从中心取消注册该课程并且一切正常。

不知道为什么问题会在连接对象上反映出来。