z****e 发帖数: 54598 | 1 就是一个调度问题
一般多线程本质就是交给os去做调度
做成单线程,等于自己去做调度,纯粹吃太饱了撑着
如果只是为了躲开lock的话
压根没有必要,有的是办法
随便一个web server/web service server/app server什么都可以做到
单线程模式,主要是用在游戏上
因为游戏上如果用多线程,随便一个锁出问题
整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化
很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
要搞成伪的多线程,就是单主线程加辅助线程的模式
这就是伪多线程的由来,如果你google一下游戏多线程
就能看到很多这样的例子,教你怎么用单线程来替换多线程
但是对于server来说,其实你没有必要自己去搞
因为一来,你有各种server软件帮你做,你不需要用到各种锁
或者说你不需要自己去倒腾锁
其次就是,不管怎样,多cpu多core是趋势
你自己处理调度,就没事找事
因为os早搞定很多年了,没有必要
比如老魏那种,连cpu多少个core,每个core做什么都要自己调度
我哭了,老魏要是一不小心上班路上出了点啥意外,写的代码别人连接手都无法接手
就冲这一点,就不能用老魏的方案,找死的节奏
所以这里有人说full stack,我很怀疑这里有些id是否有能力做full stack
要做full stack,前台把游戏搞一搞,后台把j2ee搞一搞
这样各种模型就融会贯通了,否则没戏,视野不够开阔
经常鸡同鸭讲,光做web是远远不够的
因为web的复杂度既比不上游戏,也比不上j2ee那些乱七八糟的framework
web server就是自己瞎写,适合脚本来简化,包括web service server |
c*****4 发帖数: 1777 | 2 简历上有无多线程,是六位数年薪和五位数年薪的区别。因为会做多线程的人大脑结构
和只会做单线程的不一样。做PERM打广告申请绿卡,只要列明会多线程,一份合格简历
都收不到。
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
z****g 发帖数: 75 | 3 混淆了concurrency 和 parallelism
多看书,多增长知识是正道
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
T********i 发帖数: 2416 | 4 这个zhaoce前几天还问我atomic指令我是不是要自己实现?
【在 z****g 的大作中提到】 : 混淆了concurrency 和 parallelism : 多看书,多增长知识是正道
|
j********p 发帖数: 9680 | 5 感觉老魏才是高明,这才是保证自己永不失业的绝招啊.
什么程序都写的那么友好,什么人都能来接手,
怎么能体现出作者的存在价值和意义呢? |
T********i 发帖数: 2416 | 6 也就是那么几十行程序。
如果有谁接手不了那几十行程序`真该问问自己为什么了。
【在 j********p 的大作中提到】 : 感觉老魏才是高明,这才是保证自己永不失业的绝招啊. : 什么程序都写的那么友好,什么人都能来接手, : 怎么能体现出作者的存在价值和意义呢?
|
j********p 发帖数: 9680 | 7 晕,才几十行.
当我没说.
【在 T********i 的大作中提到】 : 也就是那么几十行程序。 : 如果有谁接手不了那几十行程序`真该问问自己为什么了。
|
z****g 发帖数: 75 | 8 Java/C/C++每行没限制长度吧
【在 j********p 的大作中提到】 : 晕,才几十行. : 当我没说.
|
g****t 发帖数: 4493 | |
T********i 发帖数: 2416 | 10 我每行最多一个分号
【在 z****g 的大作中提到】 : Java/C/C++每行没限制长度吧
|
|
|
T********i 发帖数: 2416 | 11 不正常啊不正常,这年头流行脑残。
【在 g****t 的大作中提到】 : 这帖子怎么能上首页?
|
f********x 发帖数: 2086 | 12
最近CS类文章经常首页好几贴
【在 T********i 的大作中提到】 : 不正常啊不正常,这年头流行脑残。
|
x**i 发帖数: 2627 | 13 re
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
b*******s 发帖数: 5216 | 14 lol
【在 T********i 的大作中提到】 : 这个zhaoce前几天还问我atomic指令我是不是要自己实现?
|
d********f 发帖数: 43471 | 15 你们这些java程序员最大的问题就是以为这个世界上只有一个java
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
f****p 发帖数: 18483 | 16 你读过kernel的code么,又在这大嘴巴。
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
f****p 发帖数: 18483 | 17 这位是让java这种懒鬼烂语言给害了的主,不懂但是到处大嘴巴。
【在 T********i 的大作中提到】 : 这个zhaoce前几天还问我atomic指令我是不是要自己实现?
|
a*********0 发帖数: 2727 | 18 哥们还是回去好好把os的基础知识学学吧,线程进程的区别是什么都没搞清楚,kernel
-level, user-level thread的区别是什么。忽悠不是cs科班出来的还行,现在码工遍
地,就不要出来现了 |
K****n 发帖数: 5970 | 19 靠OS,web service各个core负载不均匀有什么常见解法
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
b*******s 发帖数: 5216 | 20 这也是个让人看了产生无力感的帖子
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
|
|
l******l 发帖数: 2651 | 21 你是程序员?
google "thread safe".
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|
A*****i 发帖数: 3587 | 22 别闹了行么?该干啥去干啥,一个多线程让您吹成绿卡神器了
还扯上大脑结构了,卧槽,吐槽无力
您大脑结构是万线程的,满意了?
【在 c*****4 的大作中提到】 : 简历上有无多线程,是六位数年薪和五位数年薪的区别。因为会做多线程的人大脑结构 : 和只会做单线程的不一样。做PERM打广告申请绿卡,只要列明会多线程,一份合格简历 : 都收不到。
|
z****e 发帖数: 54598 | 23 插,我跟你说的是怎么绕开这种无聊的问题
怕的就是你这种吃饱了没事干,自己去倒腾的家伙
无论是concurrency还是parallelism,你都不需要自己动手
清楚了没有?
还区别,我压根没谈区别
【在 z****g 的大作中提到】 : 混淆了concurrency 和 parallelism : 多看书,多增长知识是正道
|
z****e 发帖数: 54598 | 24 这种笑话,当真就搞笑了
多线程搞起来是比较恶心
但是市场如果不需要你去搞
那就是另外一回事了
【在 c*****4 的大作中提到】 : 简历上有无多线程,是六位数年薪和五位数年薪的区别。因为会做多线程的人大脑结构 : 和只会做单线程的不一样。做PERM打广告申请绿卡,只要列明会多线程,一份合格简历 : 都收不到。
|
z****e 发帖数: 54598 | 25 系统都是增长的嘛
怎么可能一辈子几十行
这种事别人都不用写
你还要写几十行
那就是捉了
【在 j********p 的大作中提到】 : 晕,才几十行. : 当我没说.
|
z****e 发帖数: 54598 | 26 放你老娘的狗屁
【在 d********f 的大作中提到】 : 你们这些java程序员最大的问题就是以为这个世界上只有一个java
|
z****e 发帖数: 54598 | 27 没有哦
你要告诉我os搞不定多线程的调度还是什么?
你这不是吃饱了撑着嘛
【在 f****p 的大作中提到】 : 你读过kernel的code么,又在这大嘴巴。
|
z****e 发帖数: 54598 | 28 我压根没谈线程和进程
我的意思是,不管是线程还是进程
你都不需要自己动手去做
多线程也好,多进程也罢
无非一个调度的问题
自己折腾说到底就是自己处理调度
跟level有个p关系
说的根本就不是区别,而是共同点
看一群人大谈差异,让我觉得好笑
kernel
【在 a*********0 的大作中提到】 : 哥们还是回去好好把os的基础知识学学吧,线程进程的区别是什么都没搞清楚,kernel : -level, user-level thread的区别是什么。忽悠不是cs科班出来的还行,现在码工遍 : 地,就不要出来现了
|
z****e 发帖数: 54598 | 29 thread safe so what?
我说的是有没有必要自己去实现
而不是thread safe
你要说thread safe,那我的意思就是别人帮你搞定了thread safe
有很多种thread safe的方法
【在 l******l 的大作中提到】 : 你是程序员? : google "thread safe".
|
z****e 发帖数: 54598 | 30 我就这么跟你说
你连core都数得清清楚楚的
就是吃太饱了撑着
不用数一样跑
够清楚了没有?
说的就是你这种愚蠢的自以为是的举动
程序应该越简单越好
除非有性能瓶颈,或者维护上的死结
否则怎么简单怎么来
而不是指望别人懂这个懂那个
你都多大岁数的人了
你比别人懂多一点难道不应该?
反过来,你有没有想过别人如果懂得没有你多的话
那如果搞不定的话,你该怎么办?
你的plan b在哪里?
不要说几十行,写十行就足够让人晕菜的代码不要太多
你压根就不懂如何跟别人合作
【在 T********i 的大作中提到】 : 这个zhaoce前几天还问我atomic指令我是不是要自己实现?
|
|
|
z****e 发帖数: 54598 | 31 我问的是你的设计里面,会不会因为线程调度而打断
你都没听明白我在问什么
要给你举例吗?
java里面有一个AtomicInteger,我就想知道一下
你这里面是不是做了类似的操作
如果你用的不是AtomicInteger,而是Integer的话
这里面会有调度而产生的一些很trivial的问题
当然int不会有问题,你想过你如何给别人解释这里面的问题了么?
难怪你到现在还在单打独斗
nasdaq平台跟你p关系没有
别吹了,你只是一个送单的
【在 T********i 的大作中提到】 : 这个zhaoce前几天还问我atomic指令我是不是要自己实现?
|
z****e 发帖数: 54598 | 32 没关系,有一种公司叫做consulting
来了就是打击这种家伙的
资本家很喜欢找这种公司来
一来改构架,同时顺带着裁员
【在 j********p 的大作中提到】 : 感觉老魏才是高明,这才是保证自己永不失业的绝招啊. : 什么程序都写的那么友好,什么人都能来接手, : 怎么能体现出作者的存在价值和意义呢?
|
z****e 发帖数: 54598 | 33 web service跟core的调度没有关系
肯定不是web service造成的
你不用web service也会有同样的问题
【在 K****n 的大作中提到】 : 靠OS,web service各个core负载不均匀有什么常见解法
|
s*****o 发帖数: 303 | 34 呵呵,无处着力
【在 b*******s 的大作中提到】 : 这也是个让人看了产生无力感的帖子
|
h*d 发帖数: 214 | 35
......
这么说感觉你对多线程编程不熟悉啊。决大部分的GUI API都是单线程的,照你这么说
GUI应用开发也不能用多线程了?用单线程写游戏的一个优势就是容易同步控制所有游
戏元素更新。这个在多线程里可以作到但是需要更多的多线程编写的技能。但无论如何
,GUI的更新绝对是要在一个线程里操作的。这个可能就是你误以为的游戏就是单线程
的。
【在 z****e 的大作中提到】 : web service跟core的调度没有关系 : 肯定不是web service造成的 : 你不用web service也会有同样的问题
|
n******e 发帖数: 957 | |
l**********n 发帖数: 8443 | |
H**r 发帖数: 10015 | 38 说得好
程序员应该知道多线程是什么,然后用什么工具解决。具体的算法,优化如果都从头走
要累死,而且肯定会有疏忽,然后就挂了。
【在 z****e 的大作中提到】 : 我压根没谈线程和进程 : 我的意思是,不管是线程还是进程 : 你都不需要自己动手去做 : 多线程也好,多进程也罢 : 无非一个调度的问题 : 自己折腾说到底就是自己处理调度 : 跟level有个p关系 : 说的根本就不是区别,而是共同点 : 看一群人大谈差异,让我觉得好笑 :
|
n***e 发帖数: 723 | 39 额。。。
【在 z****e 的大作中提到】 : 就是一个调度问题 : 一般多线程本质就是交给os去做调度 : 做成单线程,等于自己去做调度,纯粹吃太饱了撑着 : 如果只是为了躲开lock的话 : 压根没有必要,有的是办法 : 随便一个web server/web service server/app server什么都可以做到 : 单线程模式,主要是用在游戏上 : 因为游戏上如果用多线程,随便一个锁出问题 : 整个屏幕就停滞了,游戏因为动画原因,所以对一些细微的变化 : 很敏感,所以千万不要搞成多线程,一旦冲突整个游戏就挂了
|