Merge pull request #78 from theClueless/programSyncIssue

fixed lock issue
This commit is contained in:
Jeremy Wu
2019-11-17 17:30:04 +11:00
committed by GitHub
2 changed files with 9 additions and 8 deletions

View File

@@ -90,9 +90,10 @@ namespace Wox.Plugin.Program
public static void IndexWin32Programs()
{
var win32S = Win32.All(_settings);
lock (IndexLock)
{
_win32s = Win32.All(_settings);
_win32s = win32S;
}
}
@@ -101,17 +102,18 @@ namespace Wox.Plugin.Program
var windows10 = new Version(10, 0);
var support = Environment.OSVersion.Version.Major >= windows10.Major;
var applications = support ? UWP.All() : new UWP.Application[] { };
lock (IndexLock)
{
_uwps = support ? UWP.All() : new UWP.Application[] { };
_uwps = applications;
}
}
public static void IndexPrograms()
{
var t1 = Task.Run(() => { IndexWin32Programs(); });
var t1 = Task.Run(IndexWin32Programs);
var t2 = Task.Run(() => { IndexUWPPrograms(); });
var t2 = Task.Run(IndexUWPPrograms);
Task.WaitAll(t1, t2);

View File

@@ -165,9 +165,9 @@ namespace Wox.Plugin.Program.Programs
}
#endif
#if DEBUG //make developer aware and implement handling
catch(Exception e)
catch
{
throw e;
throw;
}
#endif
return u.Apps;
@@ -230,8 +230,7 @@ namespace Wox.Plugin.Program.Programs
public override bool Equals(object obj)
{
var uwp = obj as UWP;
if (uwp != null)
if (obj is UWP uwp)
{
return FamilyName.Equals(uwp.FamilyName);
}