国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

面試題比較兩個長字符串的差異 python面試,一般都問什么問題?

python面試,一般都問什么問題?1.用Python做多線程是個好主意嗎?列舉一些讓一些Python代碼并行運行的方法。答:Python不允許真正的多線程。它有一個多線程包,但是如果你想使用多線程來

python面試,一般都問什么問題?

1.用Python做多線程是個好主意嗎?列舉一些讓一些Python代碼并行運行的方法。

答:Python不允許真正的多線程。它有一個多線程包,但是如果你想使用多線程來加速你的代碼,使用它通常不是一個好主意。Python有一個叫做全局解釋器鎖(GIL)的結(jié)構(gòu)。GIL確保只有一個 "線程和可以一次執(zhí)行。一個線程獲取GIL,做一點工作,然后將GIL傳遞給下一個線程。這種情況發(fā)生得非??欤虼嗽谌搜劭磥?,您的線程似乎是并行運行的,但它們實際上只是依次使用同一個CPU內(nèi)核。所有這些GIL通行證增加了運行內(nèi)存。這意味著如果你想讓你的代碼運行得更快,使用線程包通常不是一個好主意。

使用Python s線程包。如果你想同時運行一些東西,并且效率不是問題,那么它是完全沒問題的。或者,如果您正在運行需要等待某些東西(比如一些IO)的代碼,這可能是有意義的。但是線程庫贏了 不讓你使用額外的CPU核心。

多線程可以外包給操作系統(tǒng)(通過多重處理),一些調(diào)用Python代碼的外部應(yīng)用程序(比如Spark或者Hadoop),或者一些Python代碼調(diào)用的代碼,比如你可以用你的Python代碼調(diào)用一個C函數(shù)來完成昂貴的多線程事務(wù)。

2.這段代碼輸出了什么?

d: for I in rang

String常量池如何理解?面試一般會問嗎?

例如,為了便于理解,有以下代碼段:

字符串到helloworld

字符串t1新字符串(helloworld)

在運行時,上面的代碼會在Java虛擬機堆棧中創(chuàng)建一個字符串類型為t0的變量,然后它會先找出在方法區(qū)的運行時常量池中是否已經(jīng)存在相同的字符串。如果是,堆棧中的變量t0直接指向該字符串;如果它不 t exist,在常量池中創(chuàng)建一個helloworld字符串,然后將堆棧中的t0變量指向該字符串。要通過new關(guān)鍵字創(chuàng)建一個String對象,首先,在加載當(dāng)前類后,它會查找helloworld字符串是否已經(jīng)存在于方法區(qū)的運行時常量池中。如果不存在,它會將編譯時生成的helloworld保存到運行時常量池中。如果不存在,它將在堆中生成一個String類型的對象,堆棧中的t1變量將指向該對象。需要注意的是,從JDK1.7開始,HotSpot虛擬機就把字符串常量移到了Java堆中。

讓 再來說說String的intern方法,在JDK1.7之前的版本。,intern方先找出方法區(qū)的運行時常量池中是否已經(jīng)存在相同的字符串,如果已經(jīng)存在,則返回現(xiàn)有的字符串,否則將字符串常量添加到常量池中并返回該字符串。從JDK1.7開始,HotSpot虛擬機將字符串常量移到Java堆中,intern方法的實現(xiàn)也發(fā)生了變化。首先,它會查詢常量池是否已經(jīng)存在,如果存在,則返回常量池中的字符串,否則不會將字符串復(fù)制到常量池中,而只是保存常量池中字符串對象的引用。