Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: .NET
Expertise: Intermediate
Nov 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
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap