亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 36561 | 回復: 10
打印 上一主題 下一主題

[C] 我決定用C#寫服務器 [復制鏈接]

論壇徽章:
35
雙子座
日期:2014-05-09 17:56:38程序設計版塊每日發(fā)帖之星
日期:2015-08-30 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-12-24 06:20:0015-16賽季CBA聯(lián)賽之上海
日期:2015-12-27 11:07:07程序設計版塊每日發(fā)帖之星
日期:2016-01-12 06:20:0015-16賽季CBA聯(lián)賽之北京
日期:2016-01-15 01:01:2115-16賽季CBA聯(lián)賽之浙江
日期:2016-01-15 22:38:20程序設計版塊每日發(fā)帖之星
日期:2016-01-18 06:20:00每日論壇發(fā)貼之星
日期:2016-01-18 06:20:0015-16賽季CBA聯(lián)賽之北控
日期:2016-01-30 21:43:01程序設計版塊每日發(fā)帖之星
日期:2016-02-08 06:20:0015-16賽季CBA聯(lián)賽之山西
日期:2016-02-20 10:54:41
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2019-12-11 12:04 來自手機 |只看該作者 |倒序瀏覽
提示: 作者被禁止或刪除 內容自動屏蔽

論壇徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16賽季CBA聯(lián)賽之青島
日期:2016-07-05 12:36:0515-16賽季CBA聯(lián)賽之廣東
日期:2016-06-29 11:45:542015亞冠之全北現(xiàn)代
日期:2015-07-22 08:09:472015年辭舊歲徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39獅子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技術圖書徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
2 [報告]
發(fā)表于 2019-12-12 08:28 |只看該作者
C++有協(xié)程就好了(聽說快了),寫你這種應用就很舒服

論壇徽章:
15
射手座
日期:2014-11-29 19:22:4915-16賽季CBA聯(lián)賽之青島
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16賽季CBA聯(lián)賽之四川
日期:2017-02-07 21:08:572015年亞冠紀念徽章
日期:2015-11-06 12:31:58每日論壇發(fā)貼之星
日期:2015-08-04 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-08-04 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-07-12 22:20:002015亞冠之浦和紅鉆
日期:2015-07-08 10:10:132015亞冠之大阪鋼巴
日期:2015-06-29 11:21:122015亞冠之廣州恒大
日期:2015-05-22 21:55:412015年亞洲杯之伊朗
日期:2015-04-10 16:28:25
3 [報告]
發(fā)表于 2019-12-15 19:43 |只看該作者
本帖最后由 yulihua49 于 2019-12-15 19:47 編輯
bruceteen 發(fā)表于 2019-12-12 08:28
C++有協(xié)程就好了(聽說快了),寫你這種應用就很舒服

正確的說,不是C++,而是在哪個操作系統(tǒng)。
LINUX有,ucontext,我已經用了好幾年了。
man makecontext 試試看

MAKECONTEXT(3)                                                            Linux Programmer's Manual                                                            MAKECONTEXT(3)

NAME
       makecontext, swapcontext - manipulate user context

SYNOPSIS
       #include <ucontext.h>

       void makecontext(ucontext_t *ucp, void (*func)(), int argc, ...);

       int swapcontext(ucontext_t *oucp, const ucontext_t *ucp);

DESCRIPTION
       In  a  System  V-like environment, one has the type ucontext_t defined in <ucontext.h> and the four functions getcontext(3), setcontext(3), makecontext() and swapcon-
       text() that allow user-level context switching between multiple threads of control within a process.

       For the type and the first two functions, see getcontext(3).

       The makecontext() function modifies the context pointed to by ucp (which was obtained from a call to getcontext(3)).  Before invoking makecontext(), the  caller  must
       allocate a new stack for this context and assign its address to ucp->uc_stack, and define a successor context and assign its address to ucp->uc_link.

       When  this context is later activated (using setcontext(3) or swapcontext()) the function func is called, and passed the series of integer (int) arguments that follow
       argc; the caller must specify the number of these arguments in argc.  When this function returns, the successor  context  is  activated.   If  the  successor  context
       pointer is NULL, the thread exits.

       The swapcontext() function saves the current context in the structure pointed to by oucp, and then activates the context pointed to by ucp.

RETURN VALUE
       When successful, swapcontext() does not return.  (But we may return later, in case oucp is activated, in which case it looks like swapcontext() returns 0.)  On error,
       swapcontext() returns -1 and sets errno appropriately.

ERRORS
       ENOMEM Insufficient stack space left.

VERSIONS
       makecontext() and swapcontext() are provided in glibc since version 2.1.


評分

參與人數(shù) 1可用積分 +20 收起 理由
飄絮絮絮丶 + 20 贊一個!

查看全部評分

論壇徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16賽季CBA聯(lián)賽之青島
日期:2016-07-05 12:36:0515-16賽季CBA聯(lián)賽之廣東
日期:2016-06-29 11:45:542015亞冠之全北現(xiàn)代
日期:2015-07-22 08:09:472015年辭舊歲徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39獅子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技術圖書徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
4 [報告]
發(fā)表于 2019-12-16 08:59 |只看該作者
回復 3# yulihua49

是的,謝謝!
每個操作系統(tǒng)都有自身的協(xié)程,比如windows也有 ConvertThreadToFibe 等等。
但只有協(xié)程與C++語法相結合,才能簡單好用。比如 https://zh.cppreference.com/w/cpp/language/coroutines

論壇徽章:
15
射手座
日期:2014-11-29 19:22:4915-16賽季CBA聯(lián)賽之青島
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16賽季CBA聯(lián)賽之四川
日期:2017-02-07 21:08:572015年亞冠紀念徽章
日期:2015-11-06 12:31:58每日論壇發(fā)貼之星
日期:2015-08-04 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-08-04 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-07-12 22:20:002015亞冠之浦和紅鉆
日期:2015-07-08 10:10:132015亞冠之大阪鋼巴
日期:2015-06-29 11:21:122015亞冠之廣州恒大
日期:2015-05-22 21:55:412015年亞洲杯之伊朗
日期:2015-04-10 16:28:25
5 [報告]
發(fā)表于 2019-12-16 21:40 |只看該作者
本帖最后由 yulihua49 于 2019-12-16 21:49 編輯
bruceteen 發(fā)表于 2019-12-16 08:59
回復 3# yulihua49 是的,謝謝!每個操作系統(tǒng)都有自身的協(xié)程,比如windows也有 ConvertThreadToFibe 等等。 ...

看了,這些功能都是自己寫。因為有特殊需求,沒有用這個。
自己寫,資源控制更細致。
比如,寫一個FPC(Fiber Per Connection)+線程池服務器, 如果同時受理10000個連接,就需要10000個Fiber,10000個用戶棧。每個棧2M,就需要20G的內存,目前并不是很經濟。
這時,我要寫的協(xié)程管理,就采用了棧池技術,就是只有有限個棧,目前是=線程數(shù)。只有活動的連接,才給分配棧。連接狀態(tài),沒有發(fā)出請求的,不給棧。發(fā)出請求的,分配棧,任務完成,回收棧。
這就只有自己寫協(xié)程了。
線程池協(xié)程,有n個線程,+ n個協(xié)程棧,基本是2n個棧。實際上還要多一些,多不了多少。。

論壇徽章:
44
15-16賽季CBA聯(lián)賽之浙江
日期:2021-10-11 02:03:59程序設計版塊每日發(fā)帖之星
日期:2016-07-02 06:20:0015-16賽季CBA聯(lián)賽之新疆
日期:2016-04-25 10:55:452016科比退役紀念章
日期:2016-04-23 00:51:2315-16賽季CBA聯(lián)賽之山東
日期:2016-04-17 12:00:2815-16賽季CBA聯(lián)賽之福建
日期:2016-04-12 15:21:2915-16賽季CBA聯(lián)賽之遼寧
日期:2016-03-24 21:38:2715-16賽季CBA聯(lián)賽之福建
日期:2016-03-18 12:13:4015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-05 00:55:2015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-04 21:11:3615-16賽季CBA聯(lián)賽之天津
日期:2016-11-02 00:33:1215-16賽季CBA聯(lián)賽之浙江
日期:2017-01-13 01:31:49
6 [報告]
發(fā)表于 2019-12-30 22:40 |只看該作者
啊呀呀呀這么久了大家還在糾結fiber這種事嗎?話說連C++都有stackless coroutine了……

所以想搞dotnet就去用C#,想搞JVM的就去用kotlin,還想用C++的……就去搞Rust吧……
--
我算是在拆我自己的臺嗎?

論壇徽章:
15
射手座
日期:2014-11-29 19:22:4915-16賽季CBA聯(lián)賽之青島
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16賽季CBA聯(lián)賽之四川
日期:2017-02-07 21:08:572015年亞冠紀念徽章
日期:2015-11-06 12:31:58每日論壇發(fā)貼之星
日期:2015-08-04 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-08-04 06:20:00程序設計版塊每日發(fā)帖之星
日期:2015-07-12 22:20:002015亞冠之浦和紅鉆
日期:2015-07-08 10:10:132015亞冠之大阪鋼巴
日期:2015-06-29 11:21:122015亞冠之廣州恒大
日期:2015-05-22 21:55:412015年亞洲杯之伊朗
日期:2015-04-10 16:28:25
7 [報告]
發(fā)表于 2020-01-04 20:41 |只看該作者
本帖最后由 yulihua49 于 2020-01-04 20:43 編輯
windoze 發(fā)表于 2019-12-30 22:40
啊呀呀呀這么久了大家還在糾結fiber這種事嗎?話說連C++都有stackless coroutine了……所以想搞dotnet就去 ...

不搞stackless,沒法用。
我搞棧池。
那年跟你爭論之后,棧池技術已經應用數(shù)年,非常可靠。允許應用插件任意設定棧尺寸。

論壇徽章:
44
15-16賽季CBA聯(lián)賽之浙江
日期:2021-10-11 02:03:59程序設計版塊每日發(fā)帖之星
日期:2016-07-02 06:20:0015-16賽季CBA聯(lián)賽之新疆
日期:2016-04-25 10:55:452016科比退役紀念章
日期:2016-04-23 00:51:2315-16賽季CBA聯(lián)賽之山東
日期:2016-04-17 12:00:2815-16賽季CBA聯(lián)賽之福建
日期:2016-04-12 15:21:2915-16賽季CBA聯(lián)賽之遼寧
日期:2016-03-24 21:38:2715-16賽季CBA聯(lián)賽之福建
日期:2016-03-18 12:13:4015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-05 00:55:2015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-04 21:11:3615-16賽季CBA聯(lián)賽之天津
日期:2016-11-02 00:33:1215-16賽季CBA聯(lián)賽之浙江
日期:2017-01-13 01:31:49
8 [報告]
發(fā)表于 2020-01-05 01:32 |只看該作者
回復 7# yulihua49

已有的代碼當然不要改了,跑得好好的動它干嘛。不過新項目還是可以看看新技術的,干這行不就是活到老學到老。

論壇徽章:
3
巳蛇
日期:2013-10-03 10:41:48申猴
日期:2014-07-29 16:12:04天蝎座
日期:2014-08-21 09:24:52
9 [報告]
發(fā)表于 2020-01-06 16:00 |只看該作者
回復 6# windoze

什么情況啊大佬,Rust到底行不行。。

論壇徽章:
44
15-16賽季CBA聯(lián)賽之浙江
日期:2021-10-11 02:03:59程序設計版塊每日發(fā)帖之星
日期:2016-07-02 06:20:0015-16賽季CBA聯(lián)賽之新疆
日期:2016-04-25 10:55:452016科比退役紀念章
日期:2016-04-23 00:51:2315-16賽季CBA聯(lián)賽之山東
日期:2016-04-17 12:00:2815-16賽季CBA聯(lián)賽之福建
日期:2016-04-12 15:21:2915-16賽季CBA聯(lián)賽之遼寧
日期:2016-03-24 21:38:2715-16賽季CBA聯(lián)賽之福建
日期:2016-03-18 12:13:4015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-05 00:55:2015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-04 21:11:3615-16賽季CBA聯(lián)賽之天津
日期:2016-11-02 00:33:1215-16賽季CBA聯(lián)賽之浙江
日期:2017-01-13 01:31:49
10 [報告]
發(fā)表于 2020-01-07 22:29 |只看該作者
回復 9# pandaiam

Rust肯定到了可以拿來寫東西的階段,不過說實話這個語法實在是讓人有點吐槽不能,每次看見那些個'a 'b總有點生理上的不適感。如果不是特別計較性能的項目還是用省事的東西吧,我瞅著C#8就不錯。
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP