c 多線(xiàn)程面試題及答案_第1頁(yè)
c 多線(xiàn)程面試題及答案_第2頁(yè)
c 多線(xiàn)程面試題及答案_第3頁(yè)
c 多線(xiàn)程面試題及答案_第4頁(yè)
c 多線(xiàn)程面試題及答案_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

c多線(xiàn)程面試題及答案

單項(xiàng)選擇題(每題2分,共10題)1.在C語(yǔ)言中,創(chuàng)建線(xiàn)程的函數(shù)是()A.pthread_createB.thread_createC.create_threadD.make_thread答案:A2.以下哪個(gè)頭文件是C多線(xiàn)程編程需要包含的()A.<stdio.h>B.<stdlib.h>C.<pthread.h>D.<math.h>答案:C3.線(xiàn)程結(jié)束執(zhí)行可以調(diào)用的函數(shù)是()A.pthread_exitB.exitC.pthread_joinD.pthread_cancel答案:A4.若要等待一個(gè)線(xiàn)程結(jié)束,使用的函數(shù)是()A.pthread_waitB.pthread_yieldC.pthread_joinD.pthread_sleep答案:C5.線(xiàn)程間共享全局變量可能會(huì)導(dǎo)致()A.程序運(yùn)行更快B.數(shù)據(jù)競(jìng)爭(zhēng)問(wèn)題C.線(xiàn)程無(wú)法啟動(dòng)D.編譯錯(cuò)誤答案:B6.用于初始化互斥鎖的函數(shù)是()A.pthread_mutex_initB.pthread_cond_initC.pthread_mutex_lockD.pthread_mutex_destroy答案:A7.信號(hào)量的頭文件是()A.<semaphore.h>B.<signal.h>C.<pthread.h>D.<unistd.h>答案:A8.當(dāng)一個(gè)線(xiàn)程對(duì)互斥鎖進(jìn)行加鎖操作,其他線(xiàn)程再?lài)L試加鎖會(huì)()A.立即成功B.直接返回錯(cuò)誤C.阻塞等待D.隨機(jī)處理答案:C9.線(xiàn)程調(diào)度策略不包括以下哪種()A.SCHED_OTHERB.SCHED_FIFOC.SCHED_RRD.SCHED_LOW答案:D10.若要分離一個(gè)線(xiàn)程,使用的函數(shù)是()A.pthread_detachB.pthread_separateC.pthread_disconnectD.pthread_unlink答案:A多項(xiàng)選擇題(每題2分,共10題)1.以下屬于C多線(xiàn)程同步機(jī)制的有()A.互斥鎖B.信號(hào)量C.條件變量D.全局變量答案:ABC2.線(xiàn)程的狀態(tài)有()A.就緒B.運(yùn)行C.阻塞D.終止答案:ABCD3.互斥鎖的操作函數(shù)有()A.pthread_mutex_initB.pthread_mutex_lockC.pthread_mutex_unlockD.pthread_mutex_destroy答案:ABCD4.信號(hào)量的操作函數(shù)包括()A.sem_initB.sem_waitC.sem_postD.sem_destroy答案:ABCD5.創(chuàng)建線(xiàn)程時(shí),pthread_create函數(shù)的參數(shù)包括()A.線(xiàn)程標(biāo)識(shí)符B.線(xiàn)程屬性C.線(xiàn)程執(zhí)行函數(shù)D.函數(shù)參數(shù)答案:ABCD6.以下可能導(dǎo)致線(xiàn)程死鎖的情況有()A.多個(gè)線(xiàn)程相互等待對(duì)方釋放鎖B.鎖未初始化就使用C.同一線(xiàn)程多次加鎖同一互斥鎖D.釋放已釋放的鎖答案:AC7.條件變量相關(guān)的函數(shù)有()A.pthread_cond_initB.pthread_cond_waitC.pthread_cond_signalD.pthread_cond_broadcast答案:ABCD8.線(xiàn)程屬性可以設(shè)置的內(nèi)容有()A.調(diào)度策略B.優(yōu)先級(jí)C.棧大小D.線(xiàn)程名稱(chēng)答案:ABC9.以下哪些函數(shù)可以用于線(xiàn)程間通信()A.pthread_cond_signalB.sem_postC.pthread_mutex_lockD.pthread_join答案:AB10.多線(xiàn)程編程的優(yōu)點(diǎn)有()A.提高程序并發(fā)性能B.充分利用多核處理器C.簡(jiǎn)化程序邏輯D.減少資源消耗答案:AB判斷題(每題2分,共10題)1.一個(gè)進(jìn)程只能有一個(gè)線(xiàn)程。()答案:錯(cuò)2.互斥鎖可以防止多個(gè)線(xiàn)程同時(shí)訪(fǎng)問(wèn)共享資源。()答案:對(duì)3.信號(hào)量的值只能為0或1。()答案:錯(cuò)4.線(xiàn)程創(chuàng)建后會(huì)立即開(kāi)始執(zhí)行。()答案:對(duì)5.條件變量必須和互斥鎖配合使用。()答案:對(duì)6.線(xiàn)程終止后,其資源會(huì)自動(dòng)釋放。()答案:錯(cuò)7.同一線(xiàn)程可以多次對(duì)同一互斥鎖加鎖。()答案:錯(cuò)8.信號(hào)量的初始值可以任意設(shè)置。()答案:對(duì)9.線(xiàn)程調(diào)度策略可以動(dòng)態(tài)修改。()答案:對(duì)10.多線(xiàn)程編程一定能提高程序的性能。()答案:錯(cuò)簡(jiǎn)答題(每題5分,共4題)1.簡(jiǎn)述多線(xiàn)程編程中互斥鎖的作用。答案:互斥鎖用于保護(hù)共享資源,確保同一時(shí)刻只有一個(gè)線(xiàn)程能訪(fǎng)問(wèn)該資源,避免多線(xiàn)程同時(shí)訪(fǎng)問(wèn)共享資源導(dǎo)致的數(shù)據(jù)競(jìng)爭(zhēng)和不一致問(wèn)題。2.簡(jiǎn)述線(xiàn)程和進(jìn)程的區(qū)別。答案:進(jìn)程是程序在操作系統(tǒng)中的一次執(zhí)行過(guò)程,是系統(tǒng)進(jìn)行資源分配和調(diào)度的基本單位;線(xiàn)程是進(jìn)程中的一個(gè)執(zhí)行單元,是CPU調(diào)度和分派的基本單位。一個(gè)進(jìn)程可包含多個(gè)線(xiàn)程,進(jìn)程間資源獨(dú)立,線(xiàn)程共享進(jìn)程資源。3.信號(hào)量和互斥鎖的主要區(qū)別是什么?答案:互斥鎖主要用于互斥訪(fǎng)問(wèn),同一時(shí)刻只允許一個(gè)線(xiàn)程訪(fǎng)問(wèn)資源;信號(hào)量可控制多個(gè)線(xiàn)程對(duì)資源的訪(fǎng)問(wèn)數(shù)量,其值可大于1,可用于協(xié)調(diào)多個(gè)線(xiàn)程并發(fā)訪(fǎng)問(wèn)。4.簡(jiǎn)述多線(xiàn)程編程中如何避免死鎖。答案:避免死鎖要遵循一些原則,如按順序加鎖,避免循環(huán)等待;避免同一線(xiàn)程多次加鎖同一互斥鎖;設(shè)置合理的鎖超時(shí)機(jī)制,在等待一定時(shí)間后放棄加鎖嘗試。討論題(每題5分,共4題)1.討論在多線(xiàn)程環(huán)境下,使用全局變量會(huì)帶來(lái)哪些問(wèn)題及如何解決。答案:多線(xiàn)程使用全局變量會(huì)帶來(lái)數(shù)據(jù)競(jìng)爭(zhēng)問(wèn)題,導(dǎo)致數(shù)據(jù)不一致。解決方法有使用互斥鎖、信號(hào)量等同步機(jī)制來(lái)保護(hù)全局變量訪(fǎng)問(wèn);或采用線(xiàn)程局部存儲(chǔ)(TLS),讓每個(gè)線(xiàn)程有自己的變量副本。2.討論多線(xiàn)程編程中,線(xiàn)程同步機(jī)制的選擇依據(jù)。答案:依據(jù)場(chǎng)景選擇?;コ怄i用于簡(jiǎn)單的互斥訪(fǎng)問(wèn);信號(hào)量適合控制并發(fā)訪(fǎng)問(wèn)數(shù)量;條件變量用于線(xiàn)程間基于某種條件的同步。若要保護(hù)共享資源,選互斥鎖;控制多個(gè)線(xiàn)程按條件執(zhí)行,用條件變量;限制并發(fā)數(shù),選信號(hào)量。3.討論多線(xiàn)程編程對(duì)多核處理器性能提升的原理。答案:多核處理器有多個(gè)核心,多線(xiàn)程編程可將不同線(xiàn)程分配到不同核心并行執(zhí)行。每個(gè)核心可獨(dú)立處理一個(gè)線(xiàn)程任務(wù),減少等待

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論