Пример #1
0
	virtual ~FChildWaiterThread()
	{
		// remove
		ChildWaiterThreadsArrayGuard.Lock();
		ChildWaiterThreadsArray.RemoveSingle(this);
		ChildWaiterThreadsArrayGuard.Unlock();
	}
Пример #2
0
	void FManifestBuilderImpl::AddDataScanner(FDataScannerRef Scanner)
	{
		DataScannersCS.Lock();
		DataScanners.Add(MoveTemp(Scanner));
		DataScannersCS.Unlock();
		CheckForWork->Trigger();
	}
Пример #3
0
	FChildWaiterThread(pid_t InChildPid)
		:	ChildPid(InChildPid)
	{
		// add ourselves to thread array
		ChildWaiterThreadsArrayGuard.Lock();
		ChildWaiterThreadsArray.Add(this);
		ChildWaiterThreadsArrayGuard.Unlock();
	}
Пример #4
0
	FDataScannerPtr FManifestBuilderImpl::GetNextScanner()
	{
		FDataScannerPtr Result;
		DataScannersCS.Lock();
		if (DataScanners.Num() > 0)
		{
			Result = DataScanners[0];
			DataScanners.RemoveAt(0);
		}
		DataScannersCS.Unlock();
		return Result;
	}