linux下ctp行情库和交易库有问题,望确认

Discussion in 'CTP' started by skyline, Oct 20, 2011.

  1. 操作系统 centos 6.0
    CTP-API.v5.5.1.zip

    1、如果程序只包含行情库,正常编译运行。
    2、如果只包含交易库,也可以正常编译运行。
    3、如果同时包含行情和交易,哪怕没有任何代码,只是一个简单的helloworld也会出现double free


    Code:
    #include <iostream> 
    
    
    
    using namespace std;
    
    
    
    int main(void)
    
    {
    
        cout<< "hello world\n" <<endl;
    
        return 0;
    
    }
    g++ main.o -lctpmd -lctptrader -L./lib -g -o ./Bin/ctp


    [skyline@skyline Bin]$ ./ctp
    hello world


    *** glibc detected *** ./ctp: double free or corruption (!prev): 0x00000000017578e0 ***
     
  2. I can confirm this.
     
  3. 盼官方修正啊,现在搞的两个进程需要通过文件系统去通讯
     
  4. 貌似官方还没修复,试了官方发布的最新版current version: v5.5.2-2011.4.19,还是有这个问题。
     
  5. 现在好像还有这个问题。

    rt。
    我最近在做,发现还是这样。
     
  6. 这个问题可以避免的:
    自己写一个libmdapi.so只链接libthostmduserapi.so,写一个libtraderapi.so只链接libthosttraderapi.so,程序链接libmdapi.so和libtraderapi.so(如果链接这两个还是不行的话就用dlopen,反正如果不同时链接到一个的话肯定是可以的)。