[過去ログ] ふらっと C#,C♯,C#(初心者用) Part155 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
30: デフォルトの名無しさん (ワッチョイ cebb-h11B) [] 2022/06/22(水) 12:05:02.40 ID:PETcyPz40(1/2) AAS
インターフェイスは、デザインパターンやユニットテストを多少でも知っていないと意味不明だろう
79: デフォルトの名無しさん (ブーイモ MM67-oPsP) [sage] 2022/06/23(木) 16:15:51.40 ID:te570uEsM(3/3) AAS
>>7878(1): 64 (ワッチョイ 5f49-sER5) [sage] 2022/06/23(木) 15:56:54.89 ID:uYSGjbtO0(7/7) AAS
>>76
ちなみにintのほう、5+i にしてても"ほぼ"一緒やったよ。差異も似たようなもん
言いたいのは、>>51(=41)が言う「AとBにこんなに差が出るがなぜか」について、
4.8のコンソールアプリでは51が言うほどの有意な差は出なかったということ。
ちなみにワイの環境でMeanの差異は50ms程度でBが早いってなったけど、
まあこれは51が言ってるほどじゃないけど環境依存もあるからなんとも
(Randomのほうもコメントで切替えつつ検証した、差異も同じ)
原因についてのワイの推測は間違ってたってことはこれで自分で明らかにしちゃったけど、
Randomの1ms~も多分違うんじゃないかなとはこれで思う
切り分けの仕方が不適切なんだよ
>>5151(8): 41 (ワッチョイ 8341-643o) [] 2022/06/22(水) 22:57:40.86 ID:LVeGoA3E0(1) AAS
みなさんありがとうございます。書いたコードはこんな感じです。
.NET Framework4.8 の Form アプリで、画面にlabelを1つ置いています。
私の環境だとDebug, Releaseビルドに関わらず100倍くらいBが早いです。
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private Random _random = new Random();
private void Test(Func<int> func) {
var sw = Stopwatch.StartNew();
var count = 10000;
for (var i = 0; i < count ; i++) {
label1.Text = func().ToString();
Application.DoEvents();
}
sw.Stop();
Console.WriteLine($"{sw.ElapsedMilliseconds} msec");
}
private int MethodA() {
return _random.Next(1, 100);
}
private int MethodB() {
var random = new Random();
return random.Next(1, 100);
}
private void button1_Click(object sender, EventArgs e) {
Test(MethodA);
Test(MethodB);
}
}
のコードではボトルネックは明らかにTextやToStringやRandomの実装にあり、フィールドアクセスの有無やプロパティ自体のオーバーヘッドなんか誤差
>>7373(2): 64 (ワッチョイ 5f49-sER5) [sage] 2022/06/23(木) 14:15:31.83 ID:uYSGjbtO0(5/7) AAS
ちなコードの一部
private void Test(Func<int> func)
{
for (var i = 0; i < 10000; i++)
{
Console.CursorLeft = 0;
Console.Write($"{i}{func()} random");
}
}
//private int MethodA()
//{
// v = 5 + 5;
// return v;
//}
//private int MethodB()
//{
// int v = 5 + 5;
// return v;
//}
private int MethodA() => _random.Next(1, 100);
private int MethodB() => (new Random()).Next(1, 100);
[Benchmark]
public void executeA() => Test(MethodA);
[Benchmark]
public void executeB() => Test(MethodB);
のような超マイクロベンチマークとは測ってるものが全然違うわけ
その処理時間の大小が定性的に同じだったとしても、それは恐らく偶然
定量的に評価しないと意味がない
157(1): デフォルトの名無しさん (ワッチョイ 8f79-aUwc) [sage] 2022/06/26(日) 17:01:46.40 ID:tmrZCe0Z0(3/3) AAS
webは知らんけど
最近ようわからんのにスレッド立てまくる奴が作ったプログラムがこんな動作だね
正直まずいレベルで下手っぴだと思う
c#の言語仕様のせいで
201: デフォルトの名無しさん (アウグロ MMc2-qE5K) [sage] 2022/07/07(木) 07:09:20.40 ID:7GcCJzBFM(1) AAS
コンパイル時?にできんだっけ?
338: デフォルトの名無しさん (ワッチョイ fd79-FQj9) [sage] 2022/07/17(日) 23:49:55.40 ID:ByZDr6EM0(4/4) AAS
お前のプログラムは
工場のロボットアームを動かすか?
病院の医療機器を動かすか?
空港の飛行機を飛ばすか?
ダムの水門を開くか?
防災装置を動かすか?
街に警報を鳴らすか?
電車の運行管理をするか?
精密部品のレーザー加工ができるか?
半導体を作れるか?
本やお札を印刷するか?
お前のプログラムは世界を動かしているか?
こういう仕事に関われないと
結局世の中に必要ないってことなんだぜ
それを忘れるなよ
その現場では最新技術なんて使われてはいないんだ
346: デフォルトの名無しさん (ワッチョイ fd79-FQj9) [sage] 2022/07/18(月) 03:26:21.40 ID:BheDIyMp0(1) AAS
2gb超えるファイル c#
でググったらありそうだったよ
403: デフォルトの名無しさん (ブーイモ MMeb-vZl0) [sage] 2022/07/27(水) 13:26:23.40 ID:+1BW8lNBM(1) AAS
何年か前にMSのカンファレンスに行ったときはちょまどの祭り上げが酷くて、公式というのが信じられないレベルだったな
MS本社のお偉いさんも引いてた
さすがに昨今の時勢であれは問題になると思うが、まだやってんの?
431(1): デフォルトの名無しさん (ワッチョイ 99ae-NzPP) [sage] 2022/08/01(月) 13:13:50.40 ID:gUPs6Ohv0(1) AAS
でもプリインは.NET Framework4.8でしょ?
440: デフォルトの名無しさん (オッペケ Sr05-m5IC) [sage] 2022/08/02(火) 08:18:52.40 ID:sghojaj2r(1) AAS
そうどちらも~目的のた~めに~
559: デフォルトの名無しさん (オッペケ Srf1-3aJ4) [] 2022/08/13(土) 11:56:41.40 ID:qT9RB751r(12/18) AAS
>>555すみませんお願いします
実装部
画像リンク
プロパティのクラス
画像リンク
プロパティのクラスはdsと省略してます
717: デフォルトの名無しさん (アウアウウー Sa85-0BxV) [sage] 2022/08/31(水) 01:54:00.40 ID:DMniOJU7a(2/2) AAS
Int128は間違いでUint128です
805: デフォルトの名無しさん (ワッチョイ 0201-lFw7) [] 2022/09/01(木) 23:19:59.40 ID:tonqDUwL0(4/5) AAS
な…なるほど…
828: デフォルトの名無しさん (ワッチョイ 02ad-DvgC) [sage] 2022/09/02(金) 23:43:04.40 ID:ajqzn9RI0(1) AAS
ゴブ×ドワ
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.504s*