#
    Cerium アップデート
SPE 上でのデータは、
1
  | 
run(readbuf, writebuf);
  | 
 
の二つだけで、しかもタスクが終了すると自動的に解放されてました。
しかし、複数のタスクで『SPE 上の同じデータ』を共有して使いたいってのもあるわけですよ。
たとえばテクスチャのデータとか。それはまた別か?
で、それ用のAPIを実装しました。~
&color(#ff0000){2008-07-16 (水) 14:28:37 API の名称を static_* から global_* に変更しました。};
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
  | 
/**
 * @param [id] 領域ID。現在は 0〜31 まで使用可能 (Scheduler.h で定義)
 * @param [size] 領域のサイズ
 * @return allocate した領域のポインタ。下の static_get の返り値と同じ
 */
void* global_alloc(int id, int size);
/**
 * @param [id] static_alloc で作った領域 ID。
 * @return 領域のポインタ
 */
void* global_get(int id);
/**
 * @param [id] 解放したい領域の ID
 */
void global_free(int id);
  | 
 
詳しいことやソースは
1
  | 
cvs firefly:Game_project/Cerium/TaskManager
  | 
 
以下の ChangeLog や *.cpp を見てください。