解决方案 »

  1.   

    你如果这么写,应该会按照你的预期...
    @autoreleasepool {
                    TestObj* pObj = (TestObj*)[pTQ Pop];
                    NSLog(@"------ 111111 ----- %@\n", pObj);
    }
      

  2.   

    楼上的方法可行。
    RunLoop结束了,,,该RunLoop内分配的内存才会真正的释放。
      

  3.   

    我在xcode5.1用控制台程序跑了你的程序,结果如下:
    2014-03-24 18:59:20.016 qwe[4854:303] ------ 111111 ----- <TestObj: 0x100200340>
    2014-03-24 18:59:20.019 qwe[4854:303] TestObj dealloc
    2014-03-24 18:59:20.020 qwe[4854:303] ------ 22222 ------
    Program ended with exit code: 0
    符合你的预期结果
      

  4.   

    谢谢大家的解答,如qianlima210210 所言,这段程序在ios项目下面的表现的确和在mac控制台项目下的表现不一样,dream238 给出的方法也能使程序在ios下面达到我的预期,hslinux 给出了问题的原因和我该去补习的知识点。谢谢大家!