Skip to content

修复 vnpy_ctp 登出时崩溃;允许Gateway重复登录;首次登录超时弹出信息和重置;延迟设定ctp工作目录到connect函数;#89

Closed
One-sixth wants to merge 5 commits intovnpy:mainfrom
One-sixth:patch-2b

Conversation

@One-sixth
Copy link
Copy Markdown

建议每次发起的PR内容尽可能精简,复杂的修改请拆分为多次PR,便于管理合并。

改进内容

  1. vnpy_ctp 在 调用close函数登出关闭接口,有较大概率会让程序直接崩溃,原因是在C++端没有检查空指针。
  2. 在python的close函数里增加清理,和C++端exit函数增加重置。这样在登录另一个号时会自动注销和重置接口状态,登录失败时也可以直接重置。
  3. ctp在服务器关机时连接会没有任何反应,我增加了一个登录超时检查,限定时间内没有登录成功,会重置接口并输出信息,可以设为0关闭超时检查。
  4. mdapi和tdapi在 模块初始化时就设定了 临时目录路径,有点太早了,延迟到connect调用时,可以更灵活一些。

相关的Issue号(如有)

vnpy/vnpy#3707

Close #

@jnxyatmjx
Copy link
Copy Markdown

你所涉及登陆变量 有多线程更改查询操作,可能有 “QDialog::exec: Recursive call detected”的问题

@One-sixth
Copy link
Copy Markdown
Author

你所涉及登陆变量 有多线程更改查询操作,可能有 “QDialog::exec: Recursive call detected”的问题

是出现了什么问题? 这个库里并没有QDialog的调用

@jnxyatmjx
Copy link
Copy Markdown

你所涉及登陆变量 有多线程更改查询操作,可能有 “QDialog::exec: Recursive call detected”的问题

是出现了什么问题? 这个库里并没有QDialog的调用

嗯,问题定位到了。确实跟你没关系,是我这边有个结算单信息多次推送导致重复弹框的问题。

@noranhe
Copy link
Copy Markdown
Contributor

noranhe commented Mar 23, 2026

目前版本接口没有打算提供二次登录二次exit的支持。建议可以作为个性化扩展自行维护了。

@One-sixth
Copy link
Copy Markdown
Author

好的👌

@One-sixth One-sixth closed this Mar 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants