fase 4+5: fibers cooperatius substitueixen el game thread, sense mutex ni cv
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
#include <fstream>
|
||||
|
||||
#include "core/jail/jfile.hpp"
|
||||
#include "core/system/director.hpp"
|
||||
#include "core/system/fiber.hpp"
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wunused-but-set-variable"
|
||||
@@ -165,7 +165,14 @@ void JD8_Flip() {
|
||||
pixel_data[x + (y * 320)] = color;
|
||||
}
|
||||
}
|
||||
Director::get()->publishFrame(pixel_data);
|
||||
// Cedeix el control al Director. Quan Director::run() ens torne a fer
|
||||
// resume(), continuarem just ací i el joc continuarà amb la següent
|
||||
// iteració del seu loop sense bloquejos de mutex/cv.
|
||||
GameFiber::yield();
|
||||
}
|
||||
|
||||
Uint32* JD8_GetFramebuffer() {
|
||||
return pixel_data;
|
||||
}
|
||||
|
||||
void JD8_FreeSurface(JD8_Surface surface) {
|
||||
|
||||
Reference in New Issue
Block a user