#5899 Score: 0
L-Sun
Participant

future.get会阻塞当前的线程,而且你图中castRay的每次递归都会重新创建一个线程,创建线程会有时间开销。
你应该在spp循环里进行多线程调用castRay来更新framebuffer,而且线程应该要复用,不然每次创建一个线程都会有时间开销。你可以查查C++11怎么实现一个简单的线程池。正确实现的话784*784 32spp大概耗时1分钟多一点(i58400 6线程 Release编译)。