Dreamine.Threading.Wpf 1.0.1
이 패키지는 Worker Thread를 직접 생성하거나 제어하지 않습니다. `IDreamineThreadManager`의 상태만 관찰합니다.
로딩중...
검색중...
일치하는것 없음
Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow 클래스 참조sealed

더 자세히 ...

Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow에 대한 상속 다이어그램 :
Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow에 대한 협력 다이어그램:

Public 멤버 함수

 ThreadInfoRow (DreamineThreadInfo info)
bool UpdateFrom (DreamineThreadInfo info)

속성

string Name [get]
DreamineThreadStatus Status [get, private set]
DreamineThreadPriority Priority [get, private set]
int IntervalMs [get, private set]
int? CoreIndex [get, private set]
bool UseAffinity [get, private set]
int JobCount [get, private set]
long CycleCount [get, private set]
DateTimeOffset? StartedAt [get, private set]
DateTimeOffset? StoppedAt [get, private set]
string? LastErrorMessage [get, private set]
bool IsRunning [get]
bool IsPaused [get]
bool IsFaulted [get]

이벤트

PropertyChangedEventHandler? PropertyChanged

Private 멤버 함수

bool SetField< T > (ref T field, T value, [CallerMemberName] string? propertyName=null)
void OnPropertyChanged (string? propertyName)

Private 속성

DreamineThreadStatus _status
DreamineThreadPriority _priority
int _intervalMs
int? _coreIndex
bool _useAffinity
int _jobCount
long _cycleCount
DateTimeOffset? _startedAt
DateTimeOffset? _stoppedAt
string? _lastErrorMessage

상세한 설명

DreamineThreadMonitorViewModel이 사용하는 DreamineThreadInfo 스냅샷의 변경 가능하고 관찰 가능한 래퍼입니다.

불변 스냅샷 자체를 DataGrid에 바인딩하면 갱신마다 행을 교체해야 합니다. 이 래퍼는 스레드별 행 인스턴스를 유지하고 실제로 변경된 필드만 알리므로 선택과 행 컨테이너가 유지됩니다.

ThreadInfoRow.cs 파일의 25 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ ThreadInfoRow()

Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.ThreadInfoRow ( DreamineThreadInfo info)
inline

스레드 정보 스냅샷에서 T:Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow 클래스의 새 인스턴스를 초기화합니다.

매개변수
info초기 값을 제공할 스레드 정보 스냅샷입니다.
예외
ArgumentNullExceptioninfonull일 때 발생합니다.

ThreadInfoRow.cs 파일의 332 번째 라인에서 정의되었습니다.

333 {
334 ArgumentNullException.ThrowIfNull(info);
335
336 Name = info.Name;
337 _status = info.Status;
338 _priority = info.Priority;
339 _intervalMs = info.IntervalMs;
340 _coreIndex = info.CoreIndex;
341 _useAffinity = info.UseAffinity;
342 _jobCount = info.JobCount;
343 _cycleCount = info.CycleCount;
344 _startedAt = info.StartedAt;
345 _stoppedAt = info.StoppedAt;
346 _lastErrorMessage = info.LastErrorMessage;
347 }

다음을 참조함 : _coreIndex, _cycleCount, _intervalMs, _jobCount, _lastErrorMessage, _priority, _startedAt, _status, _stoppedAt, _useAffinity, Name.

멤버 함수 문서화

◆ OnPropertyChanged()

void Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.OnPropertyChanged ( string? propertyName)
inlineprivate

지정한 속성 이름으로 PropertyChanged 이벤트를 발생시킵니다.

매개변수
propertyName변경된 속성 이름입니다.

ThreadInfoRow.cs 파일의 485 번째 라인에서 정의되었습니다.

486 {
487 PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
488 }

다음을 참조함 : PropertyChanged.

다음에 의해서 참조됨 : SetField< T >(), UpdateFrom().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SetField< T >()

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.SetField< T > ( ref T field,
T value,
[CallerMemberName] string? propertyName = null )
inlineprivate

필드 값이 달라진 경우 값을 갱신하고 속성 변경 알림을 발생시킵니다.

템플릿 파라메터
T필드 값 형식입니다.
매개변수
field갱신할 필드 참조입니다.
value새 값입니다.
propertyName알림에 사용할 속성 이름입니다.
반환값
값이 변경되었으면 true입니다.

ThreadInfoRow.cs 파일의 457 번째 라인에서 정의되었습니다.

458 {
459 if (EqualityComparer<T>.Default.Equals(field, value))
460 {
461 return false;
462 }
463
464 field = value;
465 OnPropertyChanged(propertyName);
466 return true;
467 }

다음을 참조함 : OnPropertyChanged().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ UpdateFrom()

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.UpdateFrom ( DreamineThreadInfo info)
inline

새 스냅샷에서 행을 갱신하고 실제 값이 변경된 속성에만 알림을 발생시킵니다.

매개변수
info적용할 새 스레드 정보 스냅샷입니다.
반환값
하나 이상의 속성이 변경되었으면 true입니다.
예외
ArgumentNullExceptioninfonull일 때 발생합니다.

ThreadInfoRow.cs 파일의 381 번째 라인에서 정의되었습니다.

382 {
383 ArgumentNullException.ThrowIfNull(info);
384
385 var statusChanged = _status != info.Status;
386 var anyChanged = false;
387
388 anyChanged |= SetField(ref _status, info.Status, nameof(Status));
389 anyChanged |= SetField(ref _priority, info.Priority, nameof(Priority));
390 anyChanged |= SetField(ref _intervalMs, info.IntervalMs, nameof(IntervalMs));
391 anyChanged |= SetField(ref _coreIndex, info.CoreIndex, nameof(CoreIndex));
392 anyChanged |= SetField(ref _useAffinity, info.UseAffinity, nameof(UseAffinity));
393 anyChanged |= SetField(ref _jobCount, info.JobCount, nameof(JobCount));
394 anyChanged |= SetField(ref _cycleCount, info.CycleCount, nameof(CycleCount));
395 anyChanged |= SetField(ref _startedAt, info.StartedAt, nameof(StartedAt));
396 anyChanged |= SetField(ref _stoppedAt, info.StoppedAt, nameof(StoppedAt));
397 anyChanged |= SetField(ref _lastErrorMessage, info.LastErrorMessage, nameof(LastErrorMessage));
398
399 if (statusChanged)
400 {
401 OnPropertyChanged(nameof(IsRunning));
402 OnPropertyChanged(nameof(IsPaused));
403 OnPropertyChanged(nameof(IsFaulted));
404 }
405
406 return anyChanged;
407 }

다음을 참조함 : _coreIndex, _cycleCount, _intervalMs, _jobCount, _lastErrorMessage, _priority, _startedAt, _status, _stoppedAt, _useAffinity, CoreIndex, CycleCount, IntervalMs, IsFaulted, IsPaused, IsRunning, JobCount, LastErrorMessage, OnPropertyChanged(), Priority, StartedAt, Status, StoppedAt, UseAffinity.

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ _coreIndex

int? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._coreIndex
private

core Index 값을 보관합니다.

ThreadInfoRow.cs 파일의 62 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _cycleCount

long Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._cycleCount
private

cycle Count 값을 보관합니다.

ThreadInfoRow.cs 파일의 89 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _intervalMs

int Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._intervalMs
private

interval Ms 값을 보관합니다.

ThreadInfoRow.cs 파일의 53 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _jobCount

int Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._jobCount
private

job Count 값을 보관합니다.

ThreadInfoRow.cs 파일의 80 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _lastErrorMessage

string? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._lastErrorMessage
private

last Error Message 값을 보관합니다.

ThreadInfoRow.cs 파일의 116 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _priority

DreamineThreadPriority Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._priority
private

priority 값을 보관합니다.

ThreadInfoRow.cs 파일의 44 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _startedAt

DateTimeOffset? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._startedAt
private

started At 값을 보관합니다.

ThreadInfoRow.cs 파일의 98 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _status

DreamineThreadStatus Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._status
private

status 값을 보관합니다.

ThreadInfoRow.cs 파일의 35 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _stoppedAt

DateTimeOffset? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._stoppedAt
private

stopped At 값을 보관합니다.

ThreadInfoRow.cs 파일의 107 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

◆ _useAffinity

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow._useAffinity
private

use Affinity 값을 보관합니다.

ThreadInfoRow.cs 파일의 71 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ThreadInfoRow(), UpdateFrom().

속성 문서화

◆ CoreIndex

int? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.CoreIndex
getprivate set

할당된 CPU 코어 인덱스를 가져옵니다.

ThreadInfoRow.cs 파일의 188 번째 라인에서 정의되었습니다.

189 {
190 get => _coreIndex;
191 private set => SetField(ref _coreIndex, value);
192 }

다음에 의해서 참조됨 : UpdateFrom().

◆ CycleCount

long Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.CycleCount
getprivate set

완료된 실행 주기 수를 가져옵니다.

ThreadInfoRow.cs 파일의 230 번째 라인에서 정의되었습니다.

231 {
232 get => _cycleCount;
233 private set => SetField(ref _cycleCount, value);
234 }

다음에 의해서 참조됨 : UpdateFrom().

◆ IntervalMs

int Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.IntervalMs
getprivate set

밀리초 단위 작업자 실행 간격을 가져옵니다.

ThreadInfoRow.cs 파일의 174 번째 라인에서 정의되었습니다.

175 {
176 get => _intervalMs;
177 private set => SetField(ref _intervalMs, value);
178 }

다음에 의해서 참조됨 : UpdateFrom().

◆ IsFaulted

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.IsFaulted
get

작업자가 오류 상태인지 여부를 가져옵니다.

ThreadInfoRow.cs 파일의 306 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UpdateFrom().

◆ IsPaused

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.IsPaused
get

작업자가 현재 일시 정지되었는지 여부를 가져옵니다.

ThreadInfoRow.cs 파일의 296 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UpdateFrom().

◆ IsRunning

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.IsRunning
get

작업자가 현재 실행 중인지 여부를 가져옵니다.

ThreadInfoRow.cs 파일의 286 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UpdateFrom().

◆ JobCount

int Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.JobCount
getprivate set

작업자에 할당된 작업 수를 가져옵니다.

ThreadInfoRow.cs 파일의 216 번째 라인에서 정의되었습니다.

217 {
218 get => _jobCount;
219 private set => SetField(ref _jobCount, value);
220 }

다음에 의해서 참조됨 : UpdateFrom().

◆ LastErrorMessage

string? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.LastErrorMessage
getprivate set

마지막 예외 메시지를 가져옵니다.

ThreadInfoRow.cs 파일의 272 번째 라인에서 정의되었습니다.

273 {
274 get => _lastErrorMessage;
275 private set => SetField(ref _lastErrorMessage, value);
276 }

다음에 의해서 참조됨 : UpdateFrom().

◆ Name

string Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.Name
get

생성 후 변경되지 않는 작업자 스레드 이름을 가져옵니다.

ThreadInfoRow.cs 파일의 136 번째 라인에서 정의되었습니다.

136{ get; }

다음에 의해서 참조됨 : ThreadInfoRow().

◆ Priority

DreamineThreadPriority Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.Priority
getprivate set

작업자 스레드 우선순위를 가져옵니다.

ThreadInfoRow.cs 파일의 160 번째 라인에서 정의되었습니다.

161 {
162 get => _priority;
163 private set => SetField(ref _priority, value);
164 }

다음에 의해서 참조됨 : UpdateFrom().

◆ StartedAt

DateTimeOffset? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.StartedAt
getprivate set

마지막 시작 시각을 가져옵니다.

ThreadInfoRow.cs 파일의 244 번째 라인에서 정의되었습니다.

245 {
246 get => _startedAt;
247 private set => SetField(ref _startedAt, value);
248 }

다음에 의해서 참조됨 : UpdateFrom().

◆ Status

DreamineThreadStatus Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.Status
getprivate set

작업자 스레드 상태를 가져옵니다.

ThreadInfoRow.cs 파일의 146 번째 라인에서 정의되었습니다.

147 {
148 get => _status;
149 private set => SetField(ref _status, value);
150 }

다음에 의해서 참조됨 : UpdateFrom().

◆ StoppedAt

DateTimeOffset? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.StoppedAt
getprivate set

마지막 중지 시각을 가져옵니다.

ThreadInfoRow.cs 파일의 258 번째 라인에서 정의되었습니다.

259 {
260 get => _stoppedAt;
261 private set => SetField(ref _stoppedAt, value);
262 }

다음에 의해서 참조됨 : UpdateFrom().

◆ UseAffinity

bool Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.UseAffinity
getprivate set

CPU 선호도 활성화 여부를 가져옵니다.

ThreadInfoRow.cs 파일의 202 번째 라인에서 정의되었습니다.

203 {
204 get => _useAffinity;
205 private set => SetField(ref _useAffinity, value);
206 }

다음에 의해서 참조됨 : UpdateFrom().

이벤트 문서화

◆ PropertyChanged

PropertyChangedEventHandler? Dreamine.Threading.Wpf.ViewModels.ThreadInfoRow.PropertyChanged

행 속성 값이 변경될 때 발생합니다.

ThreadInfoRow.cs 파일의 126 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : OnPropertyChanged().


이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.: