TC官方合作论坛

 找回密码
 立即注册
查看: 1476|回复: 16
打印 上一主题 下一主题

[已解决] 问个临界区的问题~!

[复制链接]
跳转到指定楼层
楼主
发表于 2014-4-14 22:53:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
我写了个脚本,刚开始的时候,觉得以后改代码好改,就把游戏的日常任务中的每个小任务都些了一个t文件,然后在主t文件中调用,现在问题来了,每个子t文件(小任务)都是用线程调用,我使用临界区的话,差不多要开20线程,然后就老是出问题,请问我是不是t文件写多了?是不是日常任务写一个t会比较好?如果只写一个t,代码几千行,不好修改啊,时间长了,连自己都看不懂了~!纠结....
回复

使用道具 举报

5#
发表于 2014-4-15 13:29:34 | 只看该作者
呃 20个线程 你电脑真扛得住 至于t文件 你可以这样 1-10级的放一个t文件 10-20级放一个t文件 当然 如果不是很多的话 最好放一个t文件了
几千行代码真的不算多 我朋友在公司写的"一"条数据库查询语句都有几千行了 至于程序代码 呵呵 你是没见过大的项目 上万行都很正常
至于你说"不好修改啊,时间长了,连自己都看不懂了~!纠结...." 打代码第一件事注释 先写了注释才能开始写代码 否则你的程序就是垃圾
写的再好也是垃圾 一个优秀的程序必须要有注释 不然自己写的东西时间长了自己都不认识 不利于后期维护
有的时候如果遇到买源码的 一看什么都不懂 那怎么行
回复 支持 反对

使用道具 举报

沙发
发表于 2014-4-15 01:43:06 | 只看该作者
分开太多菜不好管理吧
问题多不一定就跟太多文件有关啊,具体是什么问题,什么情况下出现,描述清楚比较好找原因
回复 支持 反对

使用道具 举报

板凳
发表于 2014-4-15 06:25:16 | 只看该作者
感觉跟t文件多少没关系。脚本其实都用三层架构,一个主调用层,一个主公用库,再加若干大功能库,一般的代码少的直接放在调用层就行了,如果大项目 比如自动主线什么的额外写个t
回复 支持 反对

使用道具 举报

地板
发表于 2014-4-15 09:25:05 | 只看该作者
使用临界区并不是造成你要开多少线程的问题,而是你多个线程读写数据时要用临界区.就比如你线程1要写变量1赋值为1,线程2要读变量1的最新值,变量1初始化是为0,如果你不用临界区,则有可能你线程2读出来的值还是0,而你临界区之后,才能保证你在进行读写操作时数据是最新的,也避免了多个线程调用同一个赋值操作时造成意外的结果,
回复 支持 反对

使用道具 举报

6#
发表于 2014-4-15 13:30:24 | 只看该作者
临界区是个好东西 但是使用要小心
还有你线程太多了
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2014-4-15 13:39:59 | 只看该作者
本帖最后由 djzlove129 于 2014-4-15 13:41 编辑
q273814 发表于 2014-4-15 13:30
临界区是个好东西 但是使用要小心
还有你线程太多了


我线程是有点多,所以我才用临界区啊,我所有的任务线程(每个小任务都是一个线程)加起来的确有20多个线程,我的想法就是,小任务线程全部进入一个临界区,然后每次就只能启动一个线程,其他的我也不知道是挂起了,还是暂停了,也就是每次只做一个小任务,完成一个任务后线程离开临界区,临界区在随机开一个线程进入,这样的思路不对吗?
回复 支持 反对

使用道具 举报

8#
发表于 2014-4-15 13:43:55 | 只看该作者
djzlove129 发表于 2014-4-15 13:39
我线程是有点多,所以我才用临界区啊,我所有的任务线程(每个小任务都是一个线程)加起来的确有20多个线程 ...

为嘛 一个任务开一个线程啊
难道你的角色能同时做2个任务啊
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2014-4-15 13:45:57 | 只看该作者
q273814 发表于 2014-4-15 13:43
为嘛 一个任务开一个线程啊
难道你的角色能同时做2个任务啊

一个任务是一个功能,功能我是用线程调用的,里面有循环,不用线程不行
回复 支持 反对

使用道具 举报

10#
发表于 2014-4-15 13:51:07 | 只看该作者
- - 你开一个线程 调用一个功能 这个功能是线程调用 与你程序的界面线程是无关的 在这个功能里调用别的功能就不需要开线程了 直接调用
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-9-27 19:59 , Processed in 0.173407 second(s), 24 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表