public static BlockingPrograms GetInstance()
 {
     if (_mOInstance == null)
     {
         lock (_mutex)
         {
             if (_mOInstance == null)
             {
                 _mOInstance = new BlockingPrograms();
             }
         }
     }
     return(_mOInstance);
 }
 public static BlockingPrograms GetInstance(List <string> programsList)
 {
     if (programsList == null)
     {
         throw new ArgumentNullException(nameof(programsList));
     }
     if (_mOInstance == null)
     {
         lock (_mutex)
         {
             if (_mOInstance == null)
             {
                 _mOInstance = new BlockingPrograms(programsList);
             }
         }
     }
     return(_mOInstance);
 }