Kiedy powinienem używać GC.SuppressFinalize ()?

W .NET, w jakich okolicznościach powinienem użyć GC.SuppressFinalize()? Jakie korzyści daje mi ta