Skip to content

cezarypiatek/MultithreadingAnalyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MultithreadingAnalyzer

A set of Roslyn analyzers related to multithreading

All potential issues diagnosed by MultithreadingAnalyzer are described in depth in the following articles:

Currently implemented rules:

  • MT1000: Lock on publicly accessible member
  • MT1001: Lock on this reference
  • MT1002: Lock on object with weak identity
  • MT1003: Lock on non-readonly member
  • MT1004: Lock on value type instance
  • MT1010: Method level synchronization
  • MT1012: Acquiring lock without guarantee of releasing
  • MT1013: Releasing lock without guarantee of execution
  • MT1014: Passed by value SpinLock is useless
  • MT1015: Readonly SpinLock is useless
  • MT1016: Replace ReaderWriterLock with ReaderWriterLockSlim