<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      刷題-1

      1.進程/線程/協程

      進程與線程:
      • 進程是資源分配的獨立單位,線程是資源調度和分配的最小單位。
      • 資源擁有:進程擁有獨立的地址空間。而統一進程下的線程共享地址空間和資源,包括內存/文件句柄等。
      • 通信方式:進程通信有特定的機制,比如管道/共享內存/消息隊列/信號等方式。而線程因為內存等資源是共享的,所以可以通過直接讀寫全局變量等就可以通信
      • 上下文切換:進程切換的開銷遠大于線程,因為進程切換涉及到了虛擬地址的切換。同樣的道理,進程創建的成本也是遠高于線程的。
      • 錯誤影響:得益于內存隔離,單一進程崩潰不會直接影響到其他進程。而線程又可能會對其他線程造成直接影響。
      協程

      協程可以看作是完全作用在用戶態的線程,主要用于減少成本,提高并發性。

      2.堆/棧

      • 內存管理:棧內存由操作系統管理分配,而堆為程序員手動分配。
      • 數據結構:棧遵循先入后出原則,而堆的結構較復雜多樣。(堆的結構如最大堆/最小堆等也是考察重點!)
      • 性能:堆的大小遠大于棧,但棧的訪問速度比堆快很多。
      • 服務對象:棧主要儲存局部變量/函數調用/表達式求值,而堆用于動態內存分配/數據持久化/對象存儲等

      3.指針/引用

      指針是獨立變量/指針可以改變所指地址/大小/指針有多重指針/引用必須初始化,不可為空/

      引用通常用于函數傳參,指針用于內存管理和訪問。

      4.為什么 析構函數常用虛函數 ?為什么構造函數不虛?

      • 析構函數使用虛函數:可以確保資源正確釋放,防止內存泄漏。在多態的情況下,基類指針可以指向派生類對象,析構函數定義為虛函數可以確保刪除對象時正確調用析構函數。
      • 構造函數不能定義為虛函數:構造函數的初始化用途使得構造函數不能定義為虛函數。

      5.CPP中 多態的實現有哪幾種 ? (靜態 /動態)

      • 靜態多態:也叫編譯時多態,主要包括運算符重載和函數重載以及模板。
      • 動態多態:也叫運行時多態,包括虛函數和基類指針引用等。

      6.new /malloc區別及底層實現原理

      new/malloc的區別
      • new不僅會分配內存還會調用對象的構造函數,而malloc無構造函數。
      • new返回的是對象類型的指針。而malloc默認返回void*類型,一般要進行類型轉換。
      • 分配失敗的處理方式不同,new會拋出異常,malloc會返回NULL。
      • new是運算符可以被重載,而malloc是庫函數不能被重載。
      • new和malloc的底層實現原理不同(見下文)
      new/malloc的底層實現
      • new的底層機制主要分為兩個部分:分配器和構造器。分配器負責從堆中分配內存,一般會調用第一級的內存管理函數,比如malloc或者由操作系統提供的函數。構造器用來初始化對象,包括調用構造函數,返回地址。
      • malloc的底層:小型brk,大型mmap直接映射到地址空間。

      7.Struct→CPP內存對齊

      內存對齊方式默認由編譯器決定,也可以手動設定。目的是提高內存訪問速度。

      • 結構體struct中每個成員變量默認都要對其它的下一位成員補齊,且最末結構體要是最大對齊因子的倍數,話不多說直接上例子。所以這個結構體占用內存為1+(3)+4+8=16,16=2*8,符合要求。
      struct MyStruct {
          char a;     // 占用1字節,后面需要3字節的填充以對齊下一個成員
          int b;      // 占用4字節
          double c;   // 占用8字節(在大多數平臺上)
      };
      

      8.進程通信

      管道/共享內存/消息隊列/信號/套接字

      9.const/ static關鍵字

      10.智能指針△

      11.怎么保證線程安全

      12.常見處理哈希沖突的方法

      13.深拷貝和淺拷貝

      14.左值引用和右值引用

      posted @ 2024-11-01 17:00  寒柏懶得想  閱讀(18)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 九九热免费公开视频在线| 日本高清在线观看WWW色| 精品国产迷系列在线观看| 国产精品久久久久久久久久直播| 精品国产肉丝袜在线拍国语| 国产成人精品无码播放| 亚洲成av人片无码迅雷下载| 日韩人妻无码精品久久| 丝袜美腿亚洲综合第一页| 亚洲人精品午夜射精日韩| 少妇高潮太爽了在线视频| 日韩一区二区三区在线观院 | 九九热在线视频观看最新| 午夜欧美精品久久久久久久| 激情五月天一区二区三区| 色婷婷五月综合亚洲小说| 国产精品国产片在线观看| 人妻丝袜无码专区视频网站| 亚洲国家av一区二区| 亚洲av鲁丝一区二区三区黄| 国产目拍亚洲精品二区| 房产| 亚洲国产区男人本色| 蜜臀久久精品亚洲一区| 色综合久久一区二区三区| 久久精品国产亚洲av高| 亚洲国产精品一二三四区| 色色97| 少妇久久久被弄到高潮| 欧美交a欧美精品喷水| 五月国产综合视频在线观看| 18禁精品一区二区三区| 亚洲国产天堂久久综合226114| 欧美性猛交xxxx乱大交丰满| 一区二区三区四区五区自拍| 在线播放国产精品一品道| 国产无遮挡又黄又爽高潮 | 国产中文字幕精品视频| 欧美性猛交xxxx免费看| 亚洲成av人无码免费观看| 国产精品视频全国免费观看|