Original Post
I suspect this is a GC issue and I have some kind of circular references that it''s getting stuck on:
I''m writing a GLR parser generator. I''m basically done with it, except whenever I call the function that begins creating the parse table from the tokens/collections/productions, the program freezes.
However, it only freezes under one condition: Release mode with no debugger attached.
Debug/No debugger: no lockup
Debug/debugger: no lockup
Release/debugger: no lockup
Release/no debugger: lockup
If I put a "return;" statement anywhere inside the function that is being called, it doesn''t lock.
I put Console.WriteLine before and after each line of code to determine where the freezepoint is... it''s somewhere in the call-preparation for the constructor of my Table class.
If I don''t have that short-circuit "return;", none of the writelines in the function ever get called. If I do, all of them up to that point get called.