Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:程序无响应了,日志没有任何输出

1楼
qq代人发帖 发表于:2015/8/28 15:50:27
运行不定长时间,有时候是几天,有时候几小时,程序就无响应了,我自己做的日志也没有任何输出。在金字塔的策略中,有3个类似MID的入口,我都加了__try __except,但是没有任何的输出的。有一次我修改了参数,结果读取参数的时候越界了,就发现日志中有记录的。
我程序的代码片段:
__declspec(dllexport) int WINAPI MID(CALCINFO *calc)
{
    int     ret;

    __try
    {
        ret = __mid(calc);
    }
    __except(except_handler(GetExceptionInformation()))
    {
    }

    return ret;
}


int except_handler(LPEXCEPTION_POINTERS excep)
{
    int     i;
    PCONTEXT    context;
    unsigned long   *esp;

    context = excep->ContextRecord;
    syslog("ebp %x, eip %x, esp %x, esi %x, edi %x, eax %x, ebx %x, ecx %x\n",
        context->Ebp, context->Eip, context->Esp, context->Esi,
        context->Edi, context->Eax, context->Ebx, context->Ecx);
    fflush(fp_syslog);
    return EXCEPTION_EXECUTE_HANDLER;
}
 
 
2楼
王锋 发表于:2015/8/28 16:09:19
这样的东西我们没法去查的,建议你程序使用排除法,削减你的部分代码调用,直到找到具体的出问题的代码段,这样我们才有可能帮你一起来分析问题
3楼
solegoose 发表于:2015/8/28 16:33:58
有些问题不一定在我的代码里面,你们也总需要提供某种机制,让DLL插件开发者进行调试吧。你们在程序化交易相关的代码上,有没有用上__try  __except?或者说是c++中的try catch等,如果用了,在死机前,你们那边应该能得到某种信息吧。就让我们增加,减少一些代码来调试,这个手段未免太过原始了吧。
共3 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01953 s, 2 queries.