[過去ログ] プログラミング言語 Lua  その3 (1001レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
638
(6): 2007/12/22(土)03:22 AAS
squirrelよく知らないけど616を参考にしてやってみた

function CallSuspend1(i, j, k, l, m, n, o)
{
  local a = 10;
  local b = 20;
  print("Enter CallSuspend1\n");
  while (1) {
省19
639: 638 2007/12/22(土)03:23 AAS
結果

Call CallSuspend1
Enter CallSuspend1
ret = abc
Wakeup CallSuspend1
i = 1
j = 2
省6
640
(3): 638 2007/12/22(土)03:36 AAS
617 の ※ここ の部分を
if (!v->_suspended) v->Pop(params);
に変更して同じコードを実行すると

Call CallSuspend1
Enter CallSuspend1
ret = abc
Wakeup CallSuspend1
省8
641
(1): 2007/12/22(土)03:46 AAS
>>638
ありがとう!
やっぱり他の人がやってもそうなるんですかー
638さんはスクリプトから実行しているようですが、
自分はC++から呼び出して実行してました。

>>640
自分も同じ方法で対処するしかないのかなと思ってました。
省1
642: 638 2007/12/22(土)03:48 AAS
call と違う順番で wakeup してみる

function CallSuspend2(i, j, k, l, m) {
  local a = 10;
  local b = 20;
  print("Enter CallSuspend2\n");
  while (1) {
    suspend("abc");
省22
643: 638 2007/12/22(土)03:49 AAS
結果

Call CallSuspend2
Enter CallSuspend2
Enter CallSuspend2
Enter CallSuspend2
i = 10
j = 20
省22
645
(1): 638 2007/12/22(土)04:05 AAS
sq_call が sq_throwerror を呼び出す前に
if (!v->_suspended) v->Pop(params);
でsuspendしているときはスタックを整えていないことから考えるとバグかも
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.068s