advertisement
Premier Club Log In/Registration
  Include Code  Search Tips
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   SKILLBUILDING  |   TIP BANK  |   SOURCEBANK  |   FORUMS  |   NEWSLETTERS
Browse DevX
Partners & Affiliates
advertisement
advertisement
Tip of the Day
Rate this item | 0 users have rated this item.
Expertise: Intermediate
Language: .NET
November 6, 2009
Detect Recursive Calls in Your .NET Code

Here's a way you can check whether the current method is recursive. The following method returns True when your application is in a recursive method:

Public Function CheckRecursion() As Boolean
        Dim myTrace As New System.Diagnostics.StackTrace()
        'If stack layer count less 3 , recursion impossible.
        If myTrace.FrameCount < 3 Then
            Return False
        End If
        Dim mh As System.IntPtr = myTrace.GetFrame(1).GetMethod().MethodHandle.Value
        For iCount As Integer = 2 To myTrace.FrameCount - 1
            Dim m As System.Reflection.MethodBase = myTrace.GetFrame(iCount).GetMethod()
            If m.MethodHandle.Value = mh Then
                Return True
            End If
        Next
        Return False
    End Function
Michel Posseth
If you have a hot tip and we publish it, we'll pay you. However, due to accounting overhead we no longer pay $10 for a single tip submission. You must accumulate 10 acceptable tips to receive payment. Be sure to include a clear explanation of what the technique does and why it's useful. If it includes code, limit it to 20 lines if possible. Submit your tip here.
Please rate this item (5=best)
 1  2  3  4  5
advertisement
advertisement
Advertising Info  |   Member Services  |   Permissions  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs