青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 119  文章 - 290  trackbacks - 0

博客搬家了哦,請(qǐng)移步
叫我abc

常用鏈接

留言簿(12)

隨筆分類(lèi)

我的博客

搜索

  •  

積分與排名

  • 積分 - 306136
  • 排名 - 84

最新評(píng)論

閱讀排行榜

通常調(diào)用一個(gè)lua函數(shù)需要以下步驟

//1.解析函數(shù)名,將lua函數(shù)壓棧
findLuaItem( "a.b.c.func" );
//2.參數(shù)壓棧
lua_push()
//3.函數(shù)調(diào)用
lua_call()

最慢的是第一步解析函數(shù)名、反復(fù)查表的過(guò)程,這個(gè)過(guò)程會(huì)消耗不少時(shí)間和空間。
如果可以避開(kāi)這個(gè)過(guò)程,就能提升效率。

函數(shù)總有函數(shù)指針,就算lua函數(shù)沒(méi)有,也該有個(gè)handler吧。這個(gè)想法在LuaBind中得到了確認(rèn),他用一個(gè)int做lua函數(shù)的句柄。
接下來(lái)看了看lua SDK,沒(méi)有發(fā)現(xiàn)返回lua函數(shù)句柄的API,于是想到了這個(gè)點(diǎn)子:用一個(gè)表保存需要調(diào)用的lua函數(shù),表的key就是lua函數(shù)的句柄。
CustomTable[ handler ] = a.b.c.func

在C中訪問(wèn)lua的表,需要表索引。當(dāng)時(shí)想到的只有LUA_GLOBALSINDEX,后來(lái)從同學(xué)那知道還有LUA_ENVIRONINDEX和LUA_REGISTRYINDEX??紤]了一下,覺(jué)得registry表最合適。
Lua provides a registry, a pre-defined table that can be used by any C code to store whatever Lua value it needs to store. This table is always located at pseudo-index LUA_REGISTRYINDEX. Any C library can store data into this table, but it should take care to choose keys different from those used by other libraries, to avoid collisions. Typically, you should use as key a string containing your library name or a light userdata with the address of a C object in your code.

要將lua函數(shù)保存到這個(gè)表。lua提供了在表里增加一個(gè)條目的API,luaL_ref,返回值是新條目的key,一個(gè)整數(shù)。這樣就萬(wàn)事俱備了。
程序初始化階段,給所有會(huì)調(diào)用的lua函數(shù)分配句柄:

1findLuaItem( “a.b.c.func" );
2int handler = luaL_ref( L , LUA_REGISTRYINDEX );

以后調(diào)用lua函數(shù):
1//將lua函數(shù)壓棧
2lua_rawgeti( L , LUA_REGISTRYINDEX , handler );
3
4lua_push();
5lua_call();

that is it
posted on 2008-10-17 20:00 LOGOS 閱讀(9273) 評(píng)論(2)  編輯 收藏 引用

FeedBack:
# re: 高效調(diào)用lua函數(shù) 2009-10-12 19:03 wtf
27.3.2 References
你應(yīng)該記住,永遠(yuǎn)不要使用數(shù)字作為registry 的key,因?yàn)檫@種類(lèi)型的key是保留給reference系統(tǒng)使用。Reference系統(tǒng)是由輔助庫(kù)中的一對(duì)函數(shù)組成,這對(duì)函數(shù)用來(lái)不需要擔(dān)心名稱(chēng)沖突的將值保存到registry 中去。(實(shí)際上,這些函數(shù)可以用于任何一個(gè)表,但他們典型的被用于registry)  回復(fù)  更多評(píng)論
  
# re: 高效調(diào)用lua函數(shù) 2013-11-14 10:34 sdfasf
為什么提示沒(méi)有findLuaItem這個(gè)函數(shù)?  回復(fù)  更多評(píng)論
  

只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              亚洲综合日韩| 性高湖久久久久久久久| 噜噜噜91成人网| 久久婷婷人人澡人人喊人人爽| 亚洲欧美日韩国产综合精品二区| 亚洲视频一区二区| 亚洲午夜视频| 欧美一区二区三区在| 久久9热精品视频| 麻豆精品91| 欧美日韩视频在线一区二区观看视频| 欧美日韩精品久久久| 国产欧美日韩综合| 亚洲国产精品999| 夜夜爽www精品| 久久精品首页| 亚洲美女少妇无套啪啪呻吟| 亚洲小说欧美另类社区| 久久国产日韩欧美| 欧美激情综合网| 国产一区二区三区久久悠悠色av| 亚洲国产日韩在线一区模特| av成人老司机| 玖玖在线精品| 亚洲一区二区三区在线看| 久久精品一本| 国产精品乱子乱xxxx| 在线视频观看日韩| 性刺激综合网| 亚洲精品在线免费| 久久天天狠狠| 国产精品一区毛片| 一本一本久久a久久精品牛牛影视| 欧美有码在线观看视频| 亚洲成色999久久网站| 亚洲视频二区| 欧美成人精品在线播放| 玖玖玖免费嫩草在线影院一区| 国产精品日韩电影| 亚洲风情亚aⅴ在线发布| 亚洲午夜精品久久| 欧美激情视频一区二区三区不卡| 中文精品一区二区三区| 一本色道久久加勒比精品| 久久久精品2019中文字幕神马| 欧美日韩午夜剧场| 亚洲人成欧美中文字幕| 久久精品99国产精品酒店日本| 亚洲乱码国产乱码精品精可以看| 久久国产精品亚洲va麻豆| 国产精品分类| 在线亚洲免费| 亚洲国产精品成人| 久久综合狠狠综合久久综青草| 国产精品美女xx| 亚洲一区二区三区视频| 亚洲人成欧美中文字幕| 麻豆精品视频在线观看| 国内自拍一区| 久久久五月婷婷| 香蕉久久一区二区不卡无毒影院 | 亚洲欧美日韩人成在线播放| 99精品免费| 欧美区在线观看| 亚洲美女网站| 91久久久久久国产精品| 久久综合九色99| 亚洲国产毛片完整版 | 亚洲一级一区| 国产精品美女午夜av| 亚洲综合日韩在线| 亚洲午夜激情网页| 国产精品尤物福利片在线观看| 亚洲免费在线视频| 亚洲综合色自拍一区| 国产区二精品视| 久久亚洲欧美| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美岛国激情| 一本色道久久综合亚洲精品婷婷 | 久久久免费观看视频| 欧美中文在线字幕| 在线观看欧美一区| 日韩一级黄色大片| 亚洲国产欧美久久| 欧美激情一区二区三区| 欧美国产日韩一区| 亚洲综合视频网| 日韩视频在线一区| 久久婷婷国产综合精品青草 | 久久噜噜亚洲综合| 亚洲激情一区二区三区| 亚洲精品一区二区三区蜜桃久| 欧美午夜精品理论片a级按摩| 新67194成人永久网站| 久久视频国产精品免费视频在线| 亚洲欧洲精品一区二区三区| 日韩亚洲精品在线| 国产真实精品久久二三区| 免费欧美高清视频| 国产精品国产三级国产aⅴ9色| 久久精品一区二区三区中文字幕| 久久视频一区| 亚洲欧美日韩精品久久久| 久久久精品一区二区三区| 一区二区激情| 久久久久国产免费免费| 在线中文字幕一区| 久久精品30| 新67194成人永久网站| 欧美成人精品一区二区| 久久电影一区| 欧美日韩亚洲系列| 欧美福利一区二区| 国产午夜精品理论片a级探花| 亚洲国产老妈| 国产午夜精品在线观看| 日韩午夜三级在线| 精品不卡在线| 欧美一区二区国产| 亚洲制服丝袜在线| 欧美电影在线观看完整版| 久久久精品国产免费观看同学 | 国产亚洲一级高清| 一区电影在线观看| 亚洲欧洲一区二区三区久久| 久久成人在线| 久久大综合网| 国产精品一区二区你懂的| 亚洲人在线视频| 亚洲人成啪啪网站| 欧美成人四级电影| 欧美成人免费全部| 在线国产欧美| 另类人畜视频在线| 蜜桃视频一区| 亚洲国产精品va在看黑人| 久久精品噜噜噜成人av农村| 久久久久久伊人| 国产自产2019最新不卡| 欧美亚洲综合久久| 久久久久综合网| 黄色日韩精品| 久久综合五月| 欧美成ee人免费视频| 日韩午夜免费| 午夜精品一区二区三区在线| 免费在线成人av| 欧美第一黄色网| 亚洲国产精品www| 欧美成人精品1314www| 亚洲国产一区二区精品专区| 亚洲国产精品小视频| 欧美高清视频一区二区三区在线观看 | 亚洲欧美日韩精品久久奇米色影视| 亚洲一区二区视频在线| 国产精品乱码久久久久久| 亚洲一区二区黄色| 久久激情综合网| 伊人久久噜噜噜躁狠狠躁| 美女尤物久久精品| 亚洲精品日韩激情在线电影| 一本久久精品一区二区| 欧美日韩一区二区三区在线观看免 | 亚洲欧美日韩精品久久| 久久综合网hezyo| 日韩视频中文| 国产日韩精品一区| 免费国产一区二区| 日韩午夜av在线| 久久久久久9999| 日韩午夜免费视频| 国产日韩欧美高清| 欧美激情精品久久久六区热门| 亚洲美女网站| 噜噜爱69成人精品| 亚洲一区三区电影在线观看| 国产日产高清欧美一区二区三区| 狂野欧美激情性xxxx欧美| 夜夜嗨av一区二区三区中文字幕 | 久久久久久网址| 亚洲精选91| 老司机免费视频一区二区三区| 99精品欧美一区二区三区综合在线 | 亚洲国产高清在线观看视频| 一区二区三区回区在观看免费视频| 国产欧美日韩一区二区三区在线观看 | 亚洲福利视频免费观看| 一区二区三区www| 久久国产欧美| 久久中文精品| 91久久视频| 亚洲伦理自拍| 国产精品久久久久久久久久久久久久| 午夜精品一区二区三区在线| 国产精品高潮呻吟久久av黑人| 欧美大片免费看| 亚洲美女中出| 毛片一区二区三区| 久久9热精品视频|