2012-01-02 12 views
1

C#開発の最近のインタビューでは、.NET Frameworkをクラッシュさせる可能性があるコード例が必要でした。私はしなかったし、まだこの質問への答えを知らない。.NET Frameworkのクラッシュ

アイデア?

+17

非常に面倒な質問です。 –

+7

あなたは明確にするように頼んだはずです – SLaks

+7

別の役に立たない面接の質問。私はVMをクラッシュさせるコードを書いていないので、私は知らなかったと言いました。 – duffymo

答えて

4

例外をスローするコードを意味する可能性があります。しかし、それは非常に奇妙な質問でしょう。

もしそうでなければ、彼らはinteropを求めています。
ネイティブコードを誤って呼び出すと、.NETアプリケーションがクラッシュする可能性があります。

+5

また、単に安全でないコードと...(あなたの選択...を含む)は、文字列の内部での作業を開始し、データの最初の2バイト(文字列の長さを指定します)を変更します。 64K未満のアドレスのメモリにアクセスしようとしています。アンマネージドinterop。型データ情報を操作する(void * ptr =&(myObj.GetType()); *(ptr + 4)= myObj.GetHashCode(););等 – GGulati

+0

私は彼らが「安全でないコード」であった答えを賭ける –

+0

私はこの答えを受け入れるでしょう。私は彼らが答えを投げる単純な例外を探していなかったと確信していますが、おそらく汚れたネイティブコールです。 – koumides

1

フレームワークをクラッシュすることはできません。フレームワークを使用するアプリケーションをクラッシュさせる可能性があります。

良い例の1つは、例外処理なしでアプリケーションに無限に再帰的なメソッドを追加することです。

+3

これは、次のことです。フレームワークをクラッシュさせることができます。 MSFTは定期的にフレームワークにパッチを当てる信頼性の更新プログラムを発行し、この頻度を減らしています。それはまったく難しい(それを意味するものではない)が、それは不可能だと言っているわけではない。 しかし基本的にインタビューの質問はひどく明瞭に明瞭で曖昧です。 – GGulati

+3

@GGulati:同意しましたが、それ自体がクラッシュするフレームワークではありません。それはアプリケーションです。たとえば、フレームワーク(asp.netを除く)を使用する10のアプリケーションを実行していて、フレームワークのインスタンスがクラッシュするような操作を実行すると、そのアプリケーションがクラッシュし、すべてのアプリケーションがクラッシュします。私はそれが本当に意味論の問題だと思う。そして、おそらく彼らが実際よりもはるかに賢いと思う人から聞いたひどいインタビューの質問です。 –

+0

私は、フレームワークの一部であるCLRもクラッシュする可能性があると思います – oleksii

0

これはおもしろい質問であり、独自のコードを使用してフレームワーク自体をクラッシュさせることはできません(つまり、どういうわけかすべての実行中の.netアプリケーションを停止することはできません)。他の人が触れたように、フレームワークのクラッシュは、Microsoftによって迅速に処理される可能性が高いフレームワーク自体のバグのコードの結果になります。