Go總結的面試題目

2021-10-24 23:28:35 字數 1104 閱讀 1668

是安全的

不安全 

1.同時新增相同的元素可能會發生碰撞覆蓋2.同時對陣列進行擴容會有資料丟失

hashtable

concurrenthashmap

synchronized map

● 切片是指標型別,陣列是值型別

● 陣列的長度是固定的,而切片不是(切片是動態的陣列)

● 切片比陣列多乙個屬性:容量(cap)

● 切片的底層是陣列

go中讀寫鎖包括讀鎖和寫鎖,

多個讀執行緒可以同時訪問共享資料;

寫執行緒必須等待所有讀執行緒都釋放鎖以後,才能取得鎖;

同樣的,讀執行緒必須等待寫執行緒釋放鎖後,才能取得鎖,也就是說讀寫鎖要確保的是如下互斥關係,

可以同時讀,

讀-寫,寫-寫都是互斥的。

channel是非同步進行的。

channel存在3種狀態:

nil,未初始化的狀態,只進行了宣告,或者手動賦值為nil

active,正常的channel,可讀或者可寫

close,已關閉,千萬不要誤認為關閉channel後,channel的值是nil

package main

import (

"fmt"

"time"

)func producer(pname string, ch chan int)

}func consumer(cname string, ch chan int)

}func main()

孤兒程序:乙個父程序退出,而它的乙個或多個子程序還在執行,那麼那些子程序將成為孤兒程序。孤兒程序將被

init程序(程序號為1)所收養,並由init程序對它們完成狀態收集工作。

殭屍程序:乙個程序使用fork建立子程序,如果子程序退出,而父程序並沒有呼叫wait或waitpid獲取子程序的

狀態資訊,那麼子程序的程序描述符仍然儲存在系統中。這種程序稱之為僵死程序。

tcp傳輸的是資料流,而udp是資料報,tcp會進過三次握手,udp不需要 

面試題目總結

1.char p和char p的區別。1 char getstring void void main 2 char getstring void void main 為什麼 1 輸出的是亂碼,2 能夠輸出 hello world?hello world 作為靜態字串實際上儲存在文字常量區 參見 棧和...

面試題目總結

二叉樹相關面試題目 結點資料結構 typedef struct treenode 1.二叉樹的前序遍歷 遞迴void preorder treenode root vector res 非遞迴 vectorpreorder treenode root else 2.二叉樹中序遍歷 遞迴void mi...

面試題目總結

瀏覽器標準模式和怪異模式之間的區別是什麼 所謂的標準模式是指,瀏覽器按w3c標準解析執行 怪異模式則是使用瀏覽器自己的方式解析執行 因為不同瀏覽器解析執行的方式不一樣,所以我們稱之為怪異模式。瀏覽器解析時到底使用標準模式還是怪異模式,與你網頁中的dtd宣告直接相關,dtd宣告定義了標準文件的型別 標...