Guest User

Untitled

a guest
Jun 23rd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. public class SynchronizedCache
  2. {
  3. private ReaderWriterLockSlim cacheLock = new ReaderWriterLockSlim();
  4. private Dictionary<int, string> innerCache = new Dictionary<int, string>();
  5.  
  6. public string Read(int key)
  7. {
  8. cacheLock.EnterReadLock();
  9. try
  10. {
  11. return innerCache[key];
  12. }
  13. finally
  14. {
  15. cacheLock.ExitReadLock();
  16. }
  17. }
  18.  
  19. public void Add(int key, string value)
  20. {
  21. cacheLock.EnterWriteLock();
  22. try
  23. {
  24. innerCache.Add(key, value);
  25. }
  26. finally
  27. {
  28. cacheLock.ExitWriteLock();
  29. }
  30. }
  31. ...
  32.  
  33. private Dictionary<int, string> innerCache = new Dictionary<int, string>();
  34.  
  35. public string Read(int key)
  36. {
  37. readlock(innerCache) return innerCache[key];
  38. }
  39. public void Add(int key, string value)
  40. {
  41. writelock (innerCache) innerCache.Add(key, value);
  42. }
Add Comment
Please, Sign In to add comment