编译Shader时候,后新起一个线程,在这个文件中
\Engine\Source\Runtime\Engine\Public\ShaderCompiler.h
/**
* Shader compiling thread
* This runs in the background while UE4 is running, launches shader compile worker processes when necessary, and feeds them inputs and reads back the outputs.
*/
class FShaderCompileThreadRunnable : public FShaderCompileThreadRunnableBase
{
friend class FShaderCompilingManager;
private:
/** Information about the active workers that this thread is tracking. */
TArray<struct FShaderCompileWorkerInfo*> WorkerInfos;
/** Tracks the last time that this thread checked if the workers were still active. */
double LastCheckForWorkersTime;
public:
/** Initialization constructor. */
FShaderCompileThreadRunnable(class FShaderCompilingManager* InManager);
virtual ~FShaderCompileThreadRunnable();
private:
/**
* Grabs tasks from Manager->CompileQueue in a thread safe way and puts them int