我正在为C#开发一个libspotify包装器,并且正在编写单元测试。因此,我需要重复创建会话、登录、执行操作、注销、释放和清理会话,以便为下一次测试做好准备。
我不确定libspotify的正确“关闭”过程是什么。“jukebox”示例根本不执行关机操作-- main函数不调用sp_session_release就退出。
例如,我应该在释放之前关闭所有回调吗?目前,每当我尝试调用sp_session_release时都会崩溃。
干杯汤姆
发布于 2013-01-17 02:26:27
目前(这是非常糟糕的形式),libspotify只支持“每个进程一个sp_session实例”,正如你所看到的,在发布时它是不可靠的。从理论上讲,在注销(并等待注销回调)后释放会话应该没问题,但正如您所看到的,我们看到了一些可靠性问题。
我们自己的内部libspotify单元测试为每个测试创建了一个进程,以真正确保状态被重置,这就是为什么我们在libspotify 12中错过了这个问题。
CocoaLibSpotify的单元测试在一个进程中运行所有测试,但不要在它们之间注销等。
https://stackoverflow.com/questions/14350355
复制相似问题