随笔 - 119  文章 - 290  trackbacks - 0

博客搬家了哦,请移步
叫我abc

常用链接

留言簿(12)

随笔分类

我的博客

搜索

  •  

积分与排名

  • 积分 - 301934
  • 排名 - 84

最新评论

阅读排行榜

共5页: 1 2 3 4 5 
老老实实用win不就好了。。。。
re: 智能指针LytPtr LOGOS 2009-03-20 16:26
喷不出来XD
没看出什么不妥的地方
google一下 share_ptr和weak_ptr
1.setPos必然是C函数,注册到lua的虚拟机后,脚本即可调用该函数
2.可以自己写一个脚本系统,如果有闲,有能力,有后期维护的觉悟
3.从使用者的角度看,脚本最重要的应该是万能容器,类似lua中的table

re: 关于static关键字 LOGOS 2009-03-13 09:14
struct{ int a} test;test是一个变量
typedef struct{int a} test; test是一个类型
你把他们当成一回事了吗⊙﹏⊙b
re: mysql的入门(1) LOGOS 2009-03-04 19:50
@true
xmind
http://www.xmind.net/
re: 复杂的逻辑的BUG LOGOS 2009-03-04 09:07
遍历的过程很可能会调用一些删除操作,而且调用得很隐含
这样的情况是有的,而且不算什么异常的事情
这种情况下采用异步的删除机制就可以了
做得不错
最后给的经验也很好

又要出一个vczh么
1.如果使用脚本,不在每一帧多次由C穿越到lua是没有意义的,这属于事件驱动的一种脚本使用方式。既然是利用脚本所拥有的灵活性,那么应该按需穿越,而不是限制穿越

2.lua慢于C/C++10倍以上,所以Lua loop_add的计时我没有异议。但是这个时间的主要部分是loop_add的运行耗时,而不是穿越耗时

3.Loop lua add的计时也是正确的,但是你从该计时认为穿越很耗费就是错误的。
为什么?因为你使用了“lua_getglobal(L, func_name);”,这个函数是C函数,负责查找和压栈,即你所谓的穿越中的一步,你用这个函数10000000次,字符串的解析和全局表的查找是很费时的,这里真正花在lua_call上的时间又有多少呢

有关优化调用lua函数的方法,可以参考我的
http://www.cppblog.com/darkdestiny/archive/2008/10/17/luafunction.html

re: DX11与多线程渲染 LOGOS 2009-02-16 17:51
所有的表面都可以并行的渲染
这个确实很吸引人
@Dancefire
VC下的源文件一般不会是utf8的吧
re: 编程杂烩 LOGOS 2009-02-01 08:12
好经验收藏
re: perl 入门指引 LOGOS 2009-01-14 21:43
perl的作为脚本语言来说,词法挺糟糕的,不同的重的变量要用$%@&做区分;
容器的填充样式也有(){}[]多种规定
相比lua,变量只要给名字就可以了,容器的填充样式只有一种{}
只有在lua缺少相应的模块的情况下,我才考虑perl,毕竟cpan上东西太多了
客户端接触太多了


我随便画了个,你看看
@cppexplore
》mvc并不是23种设计模式的任意一种。
所以我才说他们不是一回事嘛
》我答observer,标准答案mvc,老师给零分,郁闷
observer内容很小覆盖却很宽泛,当然给你0分了,O(∩_∩)O~
@cppexplore
我google了一下,observer是用来在view和model之间解耦的,算是一种常用的方式吧。
不过 mvc是observer的特例 这个说法太牵强了,他们根本不是同一回事
哈哈,我也用上这个了
确实非常容易上手
我记录id的方式是
function ctrl_set.regist(name, ctrl )
ctrl_set[name] = ctrl
return ctrl
end

dlg = iup.dialog
{
ctrl_set.regist("myfrm",
iup.frame{}),
}

用ctrl_set.myfrm引用即可
比较高级
yf同学吧。使劲的踩一下,oye,处女踩
我看过的一个同步方案,和你的不同
逻辑线程在每帧结束的时候,将新的渲染context同步到渲染线程中
渲染线程在没有新的context的仍用老的context渲染

你使用了过于底层的数据结构作为数据的同步方案,看起来以后的拓展性不是太好。
另外,jl同学说了,m_index=index在intel的CPU上也许是原子操作,但是其他CPU就不一定了。所以read方法读取到的是不是一个合法的索引值很难说
@true
我觉得如果多个线程做select,连接的数量规模较大的话,还是使用epoll或者IOCP好一点
如zuhd所说,内核处理的代码总是相当稳定和有效率的
@关中刀客
回复1就是我想表达的
回复2,由主线程在每帧结束的时候执行真正的发送——socket对象是被包装过的,sendbuf并不是可重入的。基本上就是,我所使用的socketlib无法便利的做到这点
不错,最近正有使用lua做些工具的倾向,收获一个新工具,不需要编译的东西真是好东西啊

回调函数的问题
btn_brower:action,其实和wxLua.bind差不多
只不过bind显式的提供了不同的函数名绑定到signal的方法
而action则隐含了这一点,如果换个写法
btn.action = function btn:ooxx() ... end
和bind应该是无异的
楼上的做法应该是一般人都这样的
文中提到的解决方案不知道是不是编译器增加的功能,以前好像不是这样子的
re: 俄罗斯方块设计的思考 LOGOS 2008-12-29 08:35
UML图挺好
re: 使用线程局部存储TLS LOGOS 2008-12-11 09:47
终究是线程 “局部” 存储,看不出和传参给线程相比,优势在哪里
用wxWidget吧
像你这段程序,用wxWidget的话,随便改改就能编译并运行了
不知道DEV能不能编译wxWidget
re: SIZEOF宏,弥补sizeof不足 LOGOS 2008-12-04 15:18
@vczh
type traits
pfpf....
re: SIZEOF宏,弥补sizeof不足 LOGOS 2008-12-04 09:14
@OHFISH
老狼说得对
模板不生成对象
re: SIZEOF宏,弥补sizeof不足 LOGOS 2008-12-03 19:36
@OHFISH
文章的这句话。。。。
sizeof(int),sizeof(double)
Data::a既不是一个类型,也不是一个变量
re: SIZEOF宏,弥补sizeof不足 LOGOS 2008-11-29 15:46
@过路人
只是一个简单的模板而已
R即成员变量的类型
re: SIZEOF宏,弥补sizeof不足 LOGOS 2008-11-28 19:57
template<typename R , typename T>
size_t member_size( R T::* )
{
return sizeof(R);
}

printf( "%d\n" , member_size( &Data::c );
convert<100>( ... )
{
convert<98>()
convert<96>()
convert<94>()
convert<92>()
......... N extand
convert<2>()
}
说真的,这个函数除了看起来漂亮,我真的不觉得有什么好的
re: 安全的list LOGOS 2008-11-18 17:06
顶楼上
mark it & lazy delete

这样做在在逻辑上更为完整,相对于作者直接删除对象而言
一开始我也用你现在说的这套东西
后来我发现,自己手工写makefile,比搞这东西容易和效率多了
re: 打造自己的Unit Test工具 LOGOS 2008-11-14 08:50
轮子,虽然是以学习为目的

使用太繁琐,我现在手头上使用的非常方便
TEST( testa )
{
}

TEST_F( fixture , testb )
{
}
@肥仔
你可以试一下写文件的,呵呵
我没试过
win98,VC5.0,可见这是多老的文章
根本没有粘包这种东西,TCP本身是流协议,包这种概念,不过是人加上的
至于收包和分包,中规中矩的解决方案是:
1.TCP栈收到包后,立即拷贝到用户空间的一段循环缓冲区上
2.回调OnRead
3.在OnRead中,进行分包。包结构像文章的图5那样也行,不过类型是多余的,分包的话有包的长度就够了。长度不属于包逻辑的一部分,而类型则是
4.根据包长度从循环缓冲区中读取完整的包进行处理,重复这个过程,直到没法读取出完整的包为止
5.清除循环缓冲区上已经被处理的包

总而言之,TCP粘包什么的,根本就不存在。文章居然还搞得多线程什么的。。。
re: 怎么做codereview LOGOS 2008-10-17 10:12
如果做一下codereview就能解决bug的话
软件业就不会是现在这个样子了
认同你的做法
这种做法很常见,简单实用
re: 让人无语的boost LOGOS 2008-10-15 14:06
我是看到boost就贴边走
咱惹不起,还躲得起
re: 材质的可视化编辑 LOGOS 2008-10-08 19:05
可视化编辑器
很强
bless
话说你一个学生为啥会大晚上的让手收伤?
@a
呵呵,挺逗

我的意见是,随便看看socket raw api,了解个大概
然后找一个简单的框架用就可以了,比如c++ socket lib
re: 初探DirectDraw 第1集 LOGOS 2008-09-26 11:56
直接看D3D吧
DD已经是很古老的东西了
这是开了两个线程吗?
一个做DP和flip
另一个回调frameRenderingQueued
re: 垃圾收集的那点事(I) LOGOS 2008-09-22 14:11
@来支持
没听说过,搜索了一下,不知道你说的是不是这个
http://blog.csdn.net/xushiweizh/archive/2006/11/19/1396573.aspx

这个autofreealloc的责任很明确-----理解该垃圾回收器的关键点在于,是在于理解它的目标:为一个复杂的局部过程(算法)提供自动内存回收的能力。
所以从各种意义上他都比yfgc简单得多
感叹一下
已经老婆孩子了,最好还是能深入一个领域,长期驻扎在一个公司

另外给性格问题一个建议吧:
吃别人的饭,听别人的话
如果你是指将控制权交给客户端,那么异步和非阻塞没什么差别
但是非阻塞的东西不一定会给你回调通知,而异步则一定会
我觉得这两个词不是用来描述同样的事情的
共5页: 1 2 3 4 5