[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2ch.scのread.cgiへ]
Update time : 12/26 14:53 / Filesize : 130 KB / Number-of Response : 563
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C#, C♯, C#相談室 Part98



1 名前:デフォルトの名無しさん mailto:sage [2024/06/29(土) 19:18:41.95 ID:NohAfdfx0.net]
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512

■Visual Studio 2022 Community(無償の統合開発環境)等はこちら
www.visualstudio.com/downloads/

■コードを貼る場合はこちら
ideone.com/

■前スレ
C#, C♯, C#相談室 Part97
https://mevius.5ch.net/test/read.cgi/tech/1671585518/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

338 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 15:31:47.59 ID:yzNZC+ym0.net]
BOOL TestFunc(DWORD dwType, LPBYTE pBuffer, LPDWORD pcbBufSize);
dwType:欲しいデータのタイプコード
pBuffer:要求したデータを入れるバッファへのポインタ
pcbBufSize:pBufferが指すバッファのサイズ

例えば↑のような関数をエクスポートしてるアンマネージDLLがあって
DllImportする時のプロトタイプ宣言ってどう書いたらいいんでしょ?

339 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 15:33:52.84 ID:yzNZC+ym0.net]
LPDWORDはref uintでいいのかなと思うけど
LPBYTEとか、それこそLPVOIDだのハンドル系受け取る引数なんかはどう宣言したものかよく解らなくて

340 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 19:05:55.86 ID:HaWtxdw70.net]
典型的にはこう
bool TestFunc(uint dwType, byte[] pBuffer, out uint pcbBufSize);
ref/outで宣言すると使いやすいけどNULLを渡せなくなるってのが問題になったりすることもある
ケースバイケースなので一概には言えない
ポインタが絡むなら誰がメモリ確保して誰がどうやって解放するのかを把握してないといけない場合もある

341 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 19:58:01.06 ID:VD2CYluqM.net]
第三引数は普通はoutじゃないきがするけど

342 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 20:27:15.14 ID:qW3EbLcWM.net]
outだと呼び出し元からバッファサイズを渡せないな

343 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 20:47:35.76 ID:JiAmFx7+0.net]
refじゃあかんの?

344 名前:デフォルトの名無しさん mailto:sage [2025/04/16(水) 20:48:46.57 ID:yzNZC+ym0.net]
>>340
おぉ、ありがとう
ちょっとそれ元に弄ってみるます

345 名前:デフォルトの名無しさん [2025/04/20(日) 10:42:31.48 ID:T4EZ0xEH0.net]
refとかout使うと機械語的にはゴミラッパーが生成される
ついでにboolも実はネイティブ型ではないので同様にゴミが生成される
多少可読性や安全性を犠牲にして良いなら
int TestFunc(uint dwType, byte* pBuffer, uint* pcbBufSize)とすればC/C++と遜色ない機械語になる
戻り値はintなので != 0としてbool判定をする手間がかかるけどね

ついでに.NETCore系統で且つ内部でIOなどを行わずに計算量が少なく割とすぐ戻る事が確定している場合は[DllImport("native.dll"), SuppressGCTransition]とすると尚良し

346 名前:デフォルトの名無しさん [2025/04/20(日) 10:47:34.35 ID:T4EZ0xEH0.net]
もしネイティブ側の戻り値がBOOLではなくboolならC#側はbyteにすればいい
boolって実は結構罠だからな



347 名前:デフォルトの名無しさん mailto:sage [2025/04/21(月) 11:37:03.90 ID:ed9AfVbw0.net]
CharGPTの回答

WinAPI型名  意味              C# 対応型                 備考・使い方例
BYTE     8ビット符号なし整数       byte                    0〜255
WORD     16ビット符号なし整数      ushort                   0〜65535
DWORD     32ビット符号なし整数      uint                    よく使われる
LONG     32ビット符号付き整数      int                    一部APIでは戻り値で使用
ULONG     32ビット符号なし整数      uint                    DWORDと同義扱いされることあり
BOOL     論理値(実際はint型)      bool または int              C#では [MarshalAs(UnmanagedType.Bool)] を使うと便利
LPSTR     ANSI文字列へのポインタ     string (MarshalAs(UnmanagedType.LPStr))
LPCWSTR    Unicode文字列定数へのポインタ  string (MarshalAs(UnmanagedType.LPWStr)) 通常はこれを使う
LPBYTE    BYTEへのポインタ        IntPtr / byte[] / byte*          C#で配列やポインタとして使う
LPDWORD    DWORDへのポインタ        ref uint / out uint / IntPtr        APIによって使い分け
HANDLE    汎用ハンドル          IntPtr                   ハンドルは全部 IntPtr
PVOID/LPVOID 任意のポインタ         IntPtr                   Voidポインタの表現
CHAR     1バイト文字           byte(ANSI)/ char(Unicode)       ANSI文字列なら byte
TCHAR     Unicode/ANSI切り替え可能文字型 char または string             Unicode前提なら char/string

348 名前:デフォルトの名無しさん mailto:sage [2025/04/21(月) 14:43:06.51 ID:AUqiwuPT0.net]
何のためのVOIDポインタかで変わるしIntPtrで良いもんでもないわ
まぁなんだ、CharGPTなんて言うアホは黙っとけw

349 名前:デフォルトの名無しさん [2025/04/22(火) 19:34:21.37 ID:rMo0RJWh0.net]
Copilot「僕の出番ですね!」

350 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 08:49:37.84 ID:eLYGqJZZ0.net]
去ね

351 名前:デフォルトの名無しさん [2025/04/23(水) 12:17:26.63 ID:snQ3Sxp8d.net]
wchar : 「神は我を見放したのか」

352 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 20:01:13.83 ID:WPvg2tW3M.net]
>>347
ChatGPTはc#弱いな

353 名前: mailto:sage [2025/04/24(木) 01:47:59.03 ID:MPcZRdS90.net]
>>345
最近のC#はMIL(IL?)でなくマシン語を直接()生成するようになったのですか

354 名前:デフォルトの名無しさん [2025/04/24(木) 21:13:01.92 ID:985jarF60.net]
>>353
最近は native AOT といってそういうことができる
リフレクションが使えないなど制限もあるけど

元のレス先の345は、たぶん native AOT とか関係なく、中間言語が生成するコードも指して機械語と言ってると思う

355 名前: mailto:sage [2025/04/24(木) 21:27:22.97 ID:WNuC4TAo0.net]
>>354
なるほど、ありがとうございました!!

356 名前:デフォルトの名無しさん [2025/04/25(金) 11:23:25.63 ID:reKQm/Xa0.net]
>>354
ILの話はしてない
nativeAOT及びJITが最終的に生成するアセンブラを指して言ってる
パフォーマンス目的でC/C++と連携しようとすると返ってパフォーマンス落ちる事も多いからな
機械生成のゴミラッパーが挟まると呼び出しコストがdll内部のルーチンより1万倍掛かるとかザラにあるし



357 名前:デフォルトの名無しさん mailto:sage [2025/04/25(金) 12:53:18.17 ID:RL99gkZ90.net]
まぁ、アンマネージ呼び出しをパフォーマンス目的でやるもんじゃないしな

358 名前:デフォルトの名無しさん mailto:sage [2025/04/27(日) 16:38:33.85 ID:jnYDAPp70.net]
LibraryImport属性を使うとDllImport属性より最適化されたコードが出力されたりするの?

359 名前:デフォルトの名無しさん [2025/05/03(土) 12:39:00.86 ID:GwMmJ/YG0.net]
オリジナルのDataGridViewの列を作りたいんですが、デザインビューのDataGridViewからオリジナルの列を追加する方法ってありますか?

360 名前:デフォルトの名無しさん mailto:sage [2025/05/03(土) 14:19:24.20 ID:ZbkD0HOB0.net]
>>359
オーナードローしたいという事?

361 名前:デフォルトの名無しさん mailto:sage [2025/05/03(土) 14:43:58.59 ID:rfaECn6+M.net]
列A 列Bがあって 列C作ってA+Bを表示したいと言うことでは?

362 名前:デフォルトの名無しさん (ワッチョイ 7761-tU9d) [2025/05/03(土) 15:51:35.38 ID:GwMmJ/YG0.net]
DataGridViewColumnを派生させたオリジナルの列をフォームデザインビューから列に追加したいんです

363 名前:デフォルトの名無しさん [2025/05/03(土) 16:55:23.30 ID:h9Jrb8E+0.net]
lこの辺りを駆使してDataGridViewColumnクラスを作るとか
https://dobon.net/vb/dotnet/graphics/drawcontrols.html

364 名前:デフォルトの名無しさん [2025/05/03(土) 18:56:11.65 ID:Q4RX0Sa/0.net]
スマホとPCの作業を効率化したい--「Copilot Vision」の便利な8つの活用例
2025-05-03 07:00
https://japan.zdnet.com/article/35232549/


1 プログらまーまこれを改造してるので上記以外の状態でも使用できるようにしている

2 すでにプログラムがあるので1〜コードを作成する必要が無い

ボイス・トォ・スカルの本態が一般パソコンにまで来たのでつい買い捨てができるようになった
マネーロンダリング 談合 インサイダー などがはかどるといわれる

365 名前:デフォルトの名無しさん [2025/05/05(月) 08:51:14.85 ID:wERx/Nt90.net]
“イリヤ神”がまたやった 動画生成AI「FramePack」が革命的なワケ
2025年05月05日 07時00分更新
https://ascii.jp/elem/000/004/267/4267160/
 4月17日に登場した動画生成AIプログラム「FramePack(フレームパック)」が世界的に衝撃を与えています。PCローカル環境で動画AIを動かすには、少なくともビデオメモリー(VRAM)が12GBあるビデオカードを搭載していないと難しいというのが常識でした。ところが、VRAM 6GBでも安定的に動作させられるため、一気に動画AIの裾野を広げそうです。開発したのは、画像生成AI分野で「ControlNet」や、使いやすいツール「Fooocus」などを開発してきたことで知られる、スタンフォード大学に在籍中のIllyasviel(イリヤスフィール、以下イリヤ)さん。既存の方法論にまったく違ったアプローチでブレイクスルーを引き起こす、“イリヤ神”のアプローチに再び注目が集まっています。
中略
 AI動画を作ってみたいけれども、スペックが足りないために諦めていたという人が次々に自前の環境で試すようになってきました。既にワンパッケージでインストールできる環境も整えられているため、スタートも簡単です。様々なファイルをダウンロードしてくるため、初期設定は2時間くらいは見ておく必要があるものの、圧倒的にハードルが下がりました。

366 名前:デフォルトの名無しさん [2025/05/07(水) 15:21:51.01 ID:Nuqzm3Wk0.net]
下記は全て2025年5月7日の記事

OpenAI、ChatGPTの6つのモデルの違いと適切なプロンプトを解説
https://news.mynavi.jp/techplus/article/20250507-3275757/

Microsoftの新規のソースコードの約3割をAIが生成、Nadella氏が明かす
https://news.mynavi.jp/techplus/article/20250507-3271749/

スコットランドの住民を悩ます謎の怪音「ヘブリディアン・ハム」の正体はいまだ不明
https://karapaia.com/archives/507130.html



367 名前:デフォルトの名無しさん mailto:sage [2025/05/07(水) 16:08:58.47 ID:9Z9/upda0.net]
余所でやれカス

368 名前:デフォルトの名無しさん mailto:sage [2025/05/08(木) 10:26:27.15 ID:8ptxnmrna.net]
余所でやれとあなたが言ったから
色んなスレにマルチされたので
5月7日はマルチ記念日

369 名前:デフォルトの名無しさん [2025/06/16(月) 03:18:14.57 ID:BRbK5XdC0.net]
IDisposableを実装したクラスのインスタンスがもし破棄されていたら再度生成するために、

if(instance.IsDisposed || instance == null){
instance = new MyClass();
}

という書き方してるんですが、(obj != null)の部分って意味ないんでしょうか?

370 名前:369 mailto:sage [2025/06/16(月) 03:32:02.55 ID:BRbK5XdC0.net]
すみません。ChatGPTが下記の回答をくれました。

instance が null の場合、insntace.IsDiposed の評価時に NullReferenceException が発生してしまうので、

if(instance == null || instance.IsDisposed){
instance = new MyClass();
}

にしなければならない。

必要かどうか。
 設計上 instance が null になる可能性がある場合、null チェックは必要。
 絶対に null にならないように管理されている場合、null チェックは不要。

 「instance がまだ生成されていない、または使えない状態になったときに再生成する。」
 という目的が明確にある場合、妥当で意味のある書き方です。

371 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 10:34:42.11 ID:Nk3UlLjY0.net]
そもそも変数を使いまわそうとしているのが間違い
using等でスコープと連動させて管理すべき

372 名前:デフォルトの名無しさん [2025/06/16(月) 12:34:32.54 ID:rtKSn8210.net]
>>370
もうほんのちょいだけ突っ込んだ解説すると、||演算子は左から評価を行い、左がtrueになった時点で右は評価を行わない

ゆえに、nullが渡ってくる可能性がある場合には~というChatGPTの回答に繋がる

373 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 14:51:53.15 ID:IaYLbsBg0.net]
>>372
ショートサーキットの有無は全然関係ないだろ

ChatGPTのダメ回答にさらに間違ったダメ解説を付け足すなよ

374 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 17:32:21.61 ID:MOf8oPnJ0.net]


375 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 18:04:45.11 ID:wwT4Yc020.net]
>(obj != null)の部分って意味ないんでしょうか?

(obj != null)の部分が見当たらない問題

376 名前:デフォルトの名無しさん [2025/06/16(月) 19:27:49.53 ID:rtKSn8210.net]
フェイルセーフで実装するコードに対して、全体見えないのに設計直せは草しか生えない。ChatGPTでもやらん暴挙
その上でなぜ左右逆だといけないのかの解説に対してショートサーキットの有無は関係ないとかガチで草



377 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 19:46:50.44 ID:oIohr+2JM.net]
その前にフェイルセーフなのかどうかすらわからないと思う
ここでしか初期化していないならフェイルセーフではない

378 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 19:54:04.99 ID:oIohr+2JM.net]
フェイルセーフ
例えば信号が壊れたときに赤になるようにしてあれば交差点に通常運転で突っ込む事故が起こらない
壊れるにしても事態を安全な方向に振ること

初期化忘れや破棄されたインスタンス等を初期化するのはフェイルセーフではない

379 名前:デフォルトの名無しさん mailto:sage [2025/06/16(月) 21:31:49.20 ID:wwT4Yc020.net]
>>376
なぜ左右逆だといけないのかとショートサーキットの有無は関係ないんだけど指摘されてもマジでわかんないのか

ChatGPTの回答もう一度読んでみ?
あとはショートサーキット無しの|演算子にしたら問題がなくなるのかどうか考えてみ?

380 名前:デフォルトの名無しさん [2025/06/16(月) 22:33:11.11 ID:GWwonttx0.net]
>>379
ああ言われて気づいた、説明間違ってたわ

最初のコードだと、左から判断を行うので、instance.IsDisposedを判定するときにinstanceがnullの場合にエラーが発生する
けど逆にするとinstance == nullではじくので、instance.IsDisposedは判定しなくなる

381 名前:デフォルトの名無しさん [2025/06/16(月) 22:37:37.67 ID:GWwonttx0.net]
はじくじゃねーや、また言葉間違ってる

最初のコードだと、左から判断を行うのでnstanceがnullの場合にinstance.IsDisposeでNullにアクセスしようとしてぬるぽが発生する
けど逆にするとinstanceがnullの場合は左の条件だけで生成に向かい、またinstanceがnullではない場合には誤ってDisposeされているかどうかで判断して再生成する

382 名前:デフォルトの名無しさん mailto:sage [2025/06/17(火) 03:09:44.29 ID:37ojnUDK0.net]
今の世の中AIがあんのにまだこんな場末のド素人のホビープログラマーと知ったかの吹き溜まりにきよんのか理解に苦しむんやがwww
まぁAIの使い方すらわからん低脳チンパンやからこんなまともな回答が返ってこーへんスレで質問しとんのやろーなクソワロタ

383 名前:デフォルトの名無しさん [2025/06/17(火) 03:15:38.49 ID:TyHic1BD0.net]
なるほどこれがチンパンジーか

384 名前:デフォルトの名無しさん [2025/06/17(火) 19:36:15.47 ID:ItQB0Ii0a.net]
答えもらうつもりで来とるやつなんかおらんやろ

385 名前:デフォルトの名無しさん mailto:sage [2025/06/17(火) 20:04:41.87 ID:lyLRSSY/M.net]
>>381
あんたの言葉の方が、native 日本人にはおかしく聞こえる。
380 の説明は自然な日本語であり、論理的にも正確。

386 名前:デフォルトの名無しさん mailto:sage [2025/06/17(火) 20:06:58.69 ID:lyLRSSY/M.net]
>>379
|| 演算子のショートサーキット評価 (短絡評価) は大いに関係ある。



387 名前:デフォルトの名無しさん mailto:sage [2025/06/17(火) 20:46:19.23 ID:QaggVUGV0.net]
null判定を後に書いちゃうのはショートサーキット評価有無以前の問題だって話だろ

388 名前:デフォルトの名無しさん mailto:sage [2025/06/17(火) 22:02:13.98 ID:EAFPsc4EM.net]
>>387
何言ってんだか。

389 名前:デフォルトの名無しさん [2025/06/17(火) 22:56:13.68 ID:6ofORGWH0.net]
null合体演算子を使う方法もある
if (instance?.IsDisposed ?? true) {...}

「ヌルの場合は」という条件を強く示したいなら is null を明示して良いと思うけど、個人的にはこちらの方が簡潔に感じる

できればプロジェクトの設定でnull参照許容型を有効にして、 instance が null になり得るかを宣言時に分かるようにするとベター
(null になり得るなら MyClass? instance のように書く)
これが有効なプロジェクトなら、nullにならないもの (?がついてない変数やフィールド) についての null チェックはしなくて良い

390 名前:デフォルトの名無しさん mailto:sage [2025/06/17(火) 23:34:10.59 ID:iqT3/wLqM.net]
それをコードそのまんまで日本語化してみろよ
基地外じみた内容にしかならない

391 名前:デフォルトの名無しさん mailto:sage [2025/06/18(水) 08:47:51.67 ID:KyoQ8vl80.net]
ミネオはキチガイしか居らんのか

392 名前:デフォルトの名無しさん [2025/06/18(水) 17:42:58.37 ID:SrJIdorw0.net]
世界最長のコンテキストウィンドウ100万トークン入力・8万トークン出力対応にもかかわらずたった7800万円でトレーニングされたAIモデル「MiniMax-M1」がオープンソースで公開され誰でもダウンロード可能に
2025年06月18日 11時43分
https://gigazine.net/news/20250618-minimax-m1-open-source/
>>MiniMax-M1は、合計4560億のパラメーターが含まれており、トークンごとに459億のパラメーターがアクティブになるとのこと。これはDeepSeek R1の8倍に相当するコンテキストウィンドウです
>>以下のグラフは競技レベルの数学、コーディング、ソフトウェアエンジニアリング、エージェントツールの使用、長文理解タスクにおけるパフォーマンスを主要な商用AIモデルと比較したもの。赤色がMiniMax-M1で、どのタスクにおいても競合AIモデルに匹敵するパフォーマンスを発揮できている
>>MiiniMax-M1はいくつかのベンチマーク、特に長いコンテキスト駆動のベンチマークでClaude Opus 4のパフォーマンスを上回りました」と報告
※AIを動作させている動画あり
↓上記のAIお下記をプレイさせれば性能が判明する
Gemini 2.5 Proは手持ちのポケモンが瀕死になるとパニックに陥る
2025年06月18日 12時30分
https://gigazine.net/news/20250618-pokemon-gemini-panic/

[プロテクトガードやセキュリティーホール発見可能]
※1 プログラムのバグ技[裏抜け道]を使用できる=チートコードを発見可能
・ マリオカートのショートカットはプレイヤー「極悪人」の表の抜け道でNPC「一般人」は使用不可能
[インサイダー/談合/なねーロンダリング/霊感商法など行う時の悪行で音波や電波をしての悪行の方法を発見可能
※ 政治家の法律上の抜け道を仕込める=ある業種だけの法律の抜け道を発見可能
[一般大衆の思考である特定の極悪人から目線を特定の統合失調症へ返させる装置]
※ AIは正確な情報で人間を信用させれる=AIは嘘の情報を一部混ぜて人間を洗脳できる

393 名前:デフォルトの名無しさん mailto:sage [2025/08/05(火) 00:09:25.40 ID:DqljLAiY0.net]
びっくりするくらい過疎になったの何故
.net 10も出ると言うのに

394 名前:デフォルトの名無しさん [2025/08/05(火) 08:50:09.46 ID:6/QKa+fA0.net]
ここで聞くよりAIで済むからじゃね

395 名前:デフォルトの名無しさん mailto:sage [2025/08/05(火) 08:53:43.86 ID:rlCv+3El0.net]
下手に話題出すとキ印が絡んで来るしな

396 名前:デフォルトの名無しさん mailto:sage [2025/08/05(火) 18:44:21.24 ID:R8uM/fta0.net]
ム板自体人いないわ
Avaloniaは触ってるぞ



397 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 10:39:32.83 ID:dTIBHPC20.net]
大量の演算を行って結果を配列に格納するんだけど
演算量(配列のサイズ)が2倍になれば時間も2倍だと思ってたのに
実際やってみると、ものすごく時間かかるのはなんでなのか
メモリを確保する都合かな、50MB程度しか使ってないけど

398 名前:デフォルトの名無しさん [2025/08/11(月) 10:47:39.93 ID:hg5eV/6v0.net]
使ってる命令?
配列の最終項に1個追加するだけで、配列を1から順に追っかけなきゃいけない命令だと
配列が多くなるごとに倍倍で時間かかるわな

アセンブラやCのポインタ処理使って、データを直接ピンポイントで追加していけばそんなことにはならない

399 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 10:53:18.04 ID:hpBrR+js0.net]
キャッシュが効いてないからじゃね?
しらんけど

400 名前:デフォルトの名無しさん [2025/08/11(月) 10:55:29.33 ID:hg5eV/6v0.net]
https://takap-tech.com/entry/2020/02/24/213932
高級言語ってやだねぇ
毎回検証しなきゃならん

401 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 11:06:58.02 ID:sBuKtcj30.net]
未確認飛行Cの該当ページに注釈で答えが書いてある

402 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 11:37:25.41 ID:fEsLiT7D0.net]
>>397
そりゃその演算のアルゴリズム複雑度がO(n)じゃなくてO(n^2)とかそれ以上だからでしょ
配列のサイズだけ見ても意味がない

403 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 11:55:31.19 ID:sU8UUb9o0.net]
計算すれば全てをO(1)にすることもできる
50MBも計算リソースがあればまずこのルートを探索する

404 名前:デフォルトの名無しさん [2025/08/11(月) 13:42:54.49 ID:qd5s+Urc0.net]
最初にたっぷり配列確保すればいいのでは
無駄とか知らん

405 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 14:19:35.35 ID:GZ+6RBr20.net]
C#に限ったことだじゃないけど、CPUキャッシュに載るかどうかで速度は変わる

406 名前:デフォルトの名無しさん [2025/08/11(月) 18:29:46.41 ID:dNAHoV5P0.net]
配列には一気にドーンや
ちまちま1つづつ入れてるなよ



407 名前:デフォルトの名無しさん [2025/08/11(月) 22:10:51.44 ID:hAY1vQI/0.net]
CPUキャッシュって2MBとかだろ?

408 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 23:58:48.37 ID:GcNu7+N80.net]
どう使ってるかに尽きる
>>402が理解できないなら初心者スレ案件だし

409 名前:デフォルトの名無しさん mailto:sage [2025/08/13(水) 16:17:32.98 ID:ewrO98CeM.net]
>>407
最近のはL3まで含めれば10倍以上ある

410 名前:デフォルトの名無しさん mailto:sage [2025/08/16(土) 18:03:23.17 ID:qTXJOcaQ0.net]
やっぱり皆さんazureの仕事が多いですか?
クラウドアプリのコーディングって大半が異常系のハンドリングになってしまうので書いててあんまり楽しくないです

411 名前:デフォルトの名無しさん mailto:sage [2025/08/16(土) 18:47:57.82 ID:lMRwIhojM.net]
Webアプリならインフラレベルの異常なんてDBのドライバやフレームワークに任せるのが基本だろ?
ビジネスロジック上の異常ケースの話ならクラウド関係ないし、なんでそうなるのかわからん
まさかDB触る度にネットワークの一時途絶とか個別に考慮して処理してるのか?

412 名前:デフォルトの名無しさん [2025/08/16(土) 18:51:45.11 ID:odfu+VCZ0.net]
仕事は24時間稼働してるシステムのお守りで、
プログラミングは趣味なので仕事の暇な時間にツール作ったりゲーム作ったりしてます

413 名前:デフォルトの名無しさん [2025/08/16(土) 20:12:59.72 ID:IfLv3W730.net]
自己紹介は特に必要ないんで

414 名前:デフォルトの名無しさん mailto:sage [2025/08/16(土) 21:32:57.41 ID:UyfGacJ5M.net]
>>405
変わるけど、それはめちゃくちゃ高速化に詳しい人がすべてやった後に最後の最後の問題。
ほとんどの人はキャッシュよりアルゴリズムに改善の余地が沢山残されている。

415 名前:デフォルトの名無しさん mailto:sage [2025/08/16(土) 23:12:24.14 ID:8bJ0YWvyM.net]
一番手軽なのは逆にキャッシュのアルゴリズムでかなり効果がある場合があるので下っ端でも意識すべし

二次元でy軸捜査してたのをx軸捜査にするとか

416 名前:デフォルトの名無しさん mailto:sage [2025/08/16(土) 23:21:01.46 ID:8bJ0YWvyM.net]
今のプログラマでキャッシュを意識しないのはスクリプトのプログラマぐらいで
他は全員意識すべき事項



417 名前:デフォルトの名無しさん mailto:sage [2025/08/17(日) 12:24:12.02 ID:/HUCNlQRM.net]
キャッシュも意識した方がより良いが、アルゴリズムやデータ構造はもっと速度に影響を与える。

418 名前:デフォルトの名無しさん mailto:sage [2025/08/17(日) 14:53:11.93 ID:kLlULFyyp.net]
アルゴリズムが必要な場所はたいていクラスライブラリになってるから無駄無駄

419 名前:デフォルトの名無しさん mailto:sage [2025/08/17(日) 16:21:11.39 ID:achxPzU5M.net]
>>418
クラスライブラリの中のどのクラスを使うかによって速度差が生まれる。

420 名前:デフォルトの名無しさん mailto:sage [2025/08/17(日) 17:56:47.27 ID:TBSqwQ7N0.net]
アルゴリズムとデータ構造 バカの好きな言葉です

421 名前:デフォルトの名無しさん [2025/08/17(日) 18:07:53.08 ID:IwOhm0G90.net]
今どきのハードで速度とか考えんとあかんくらいのデータ処理してるとか凄いですね

422 名前:デフォルトの名無しさん [2025/08/17(日) 19:13:33.83 ID:rjpIABWW0.net]
>>421
お前みたいな馬鹿には縁がない分野なだけだろ

423 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 02:31:10.61 ID:sjantNqdM.net]
>>420
あなたは経験不足だね。

424 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 03:36:04.74 ID:mZOPLAYY0.net]
マイクロ秒・ナノ秒単位で応答時間を気にしないといけない環境だと、
アルゴリズム・データ構造・通信データ量・エンコード/デコード・ヒープアロケーション・ディスクI/Oあたりのパフォーマンスは脳が自動的に考えちゃうな。
でもだいたいDBアクセスと通信の遅延がボトルネックになりがち。

425 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 07:15:19.87 ID:7qhgEGOW0.net]
ナノ秒単位の応答速度で考えなきゃならないなんて、ハードのアクセスタイミングくらいしか無いぞ
そんな場所はたいていドライバの仕事や

426 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 07:17:47.39 ID:7qhgEGOW0.net]
アプリ層じゃせいぜいマイクロ秒単位の速度しか管理出来ないだろ



427 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 07:18:36.50 ID:7qhgEGOW0.net]
いや、ミリセコンド単位までだなww

428 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 09:00:28.22 ID:Bln8UOWH0.net]
ここ何の(言語の)スレだよw

429 名前:デフォルトの名無しさん [2025/08/18(月) 10:14:24.01 ID:5WWuxa990.net]
x ミリセコンド
o ミリセカンド

日本語は正確にね

430 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 11:00:04.93 ID:MNta4aU80.net]
日本語って言うなら、セカンドでもセコンドでも正しいが?

431 名前:デフォルトの名無しさん [2025/08/18(月) 12:32:55.91 ID:Fq++RP040.net]
>>430
secondのoは弱母音であり
弱母音を日本語の母音体系で「ア」以外と認識するのは学習的にも教育論的にも誤っており害しかない。

432 名前:デフォルトの名無しさん [2025/08/18(月) 12:40:58.95 ID:jwhpRJEDM.net]
英語スペルもカタカナもやめてしまえばよい
発音記号で文書書けよw

433 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 12:47:27.41 ID:MNta4aU80.net]
特にそんな害は無いな
害があると言うなら外語の音をそのまま転写することもできないのにカタカナでやる事こそ害だわ

434 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 15:47:57.49 ID:Tt2hOhdI0.net]
ミッシャン インパッサバル

435 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 15:54:40.07 ID:aVl32Ge50.net]
正論突かれたからって無駄な話を延々とすんなよ
C#でマイクロ秒やナノ秒なんて精度のタイミングなんて作れないよ

436 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 16:56:12.88 ID:FR+8nib40.net]
それも同程度に無駄な話やろ



437 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 20:51:05.44 ID:Op4U4I4B0.net]
またしょうもないことで言い合ってんなw

438 名前:デフォルトの名無しさん mailto:sage [2025/08/18(月) 21:34:25.37 ID:Cj+sk6kS0.net]
「マイクロ秒単位で応答時間を気にする」と「マイクロ秒精度のタイミングを作る」は全然違う話じゃねーのって気がする

前者はミリ秒より下のマイクロ秒のオーダー(〜数百µs)を気にかけなきゃいけない処理のイメージ
後者は正確に1µsごとにティックを刻まなきゃいけないような処理のイメージ

本人の意図とあってるかどうかは知らんけど






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<130KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef