rework device concurrency
This commit is contained in:
parent
4d04acb321
commit
80ea0f06f3
|
@ -25,7 +25,7 @@ namespace MediaBrowser.Server.Implementations.Devices
|
|||
private readonly ILogger _logger;
|
||||
private readonly IFileSystem _fileSystem;
|
||||
|
||||
private ConcurrentBag<DeviceInfo> _devices;
|
||||
private List<DeviceInfo> _devices;
|
||||
|
||||
public DeviceRepository(IApplicationPaths appPaths, IJsonSerializer json, ILogger logger, IFileSystem fileSystem)
|
||||
{
|
||||
|
@ -92,19 +92,16 @@ namespace MediaBrowser.Server.Implementations.Devices
|
|||
}
|
||||
|
||||
public IEnumerable<DeviceInfo> GetDevices()
|
||||
{
|
||||
if (_devices == null)
|
||||
{
|
||||
lock (_syncLock)
|
||||
{
|
||||
if (_devices == null)
|
||||
{
|
||||
_devices = new ConcurrentBag<DeviceInfo>(LoadDevices());
|
||||
}
|
||||
}
|
||||
_devices = LoadDevices().ToList();
|
||||
}
|
||||
return _devices.ToList();
|
||||
}
|
||||
}
|
||||
|
||||
private IEnumerable<DeviceInfo> LoadDevices()
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user