[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 06/23 18:33 / Filesize : 220 KB / Number-of Response : 1026
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

C#, C♯, C#相談室 Part87



1 名前:デフォルトの名無しさん mailto:sage [2015/03/29(日) 01:04:56.64 ID:k9FOA6LX.net]
■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら
www.visualstudio.com/downloads/

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

■前スレ
C#, C♯, C#相談室 Part86 [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1419608259/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。

207 名前:デフォルトの名無しさん [2015/04/18(土) 02:42:13.06 ID:HdP1ZQM0.net]
IEnumrableを連結するためのいい方法を教えてください。

例えば、チームAとBがあってそれらはプレイヤーのリストであり、
TeamsでチームA、Bをリストに格納したものとします。

Teams.PlayersでチームA,Bの全選手のリストを取りたいわけですが、
スマートな方法はありますか?

TeamA.Concat(TeamB)はあまり使いたくなく、
Teamsをベースにリストを作りたいです。

208 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 06:23:14.28 ID:R+rnuYmC.net]
>>204
TeamsのPlayersプロパティがConcatなりUnion返すのが最もスマートだと思うのだが

209 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 07:01:49.33 ID:pSroTT2+.net]
>>204
モナドってやつだね
Teams.SelectMany(team => team.Players)

210 名前:デフォルトの名無しさん [2015/04/18(土) 08:52:16.55 ID:burvUFE+.net]
C#は3年くらい使いまくって1年ぶりくらいにさわってます

DataGridViewの1セルへの更新(手動ではなくプログラム内での更新)を
TimerかBackgroundworkerでやろうと思ってるのですが、
単純にTimerでやったら1Tcik終わってもDataGridViewへの更新って
画面が固まった感じで反映されないような気がしたのですが実際どうだったのでしょうか?
Backgroundworkerだと1ループ終わったら自動的にDataGridViewの見た目上も反映されているんでしたっけ・・


よく分からない質問内容だったらスルーして下さい・・・

211 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 09:16:27.94 ID:3v7Rv0Mr.net]
>>207
スレッドが違う場合、Invokeする必要があるのでわ?

212 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 09:20:07.37 ID:3v7Rv0Mr.net]
>>199
MemoryStreamはドMじゃないから放置プレイは駄目なんでわ?

213 名前:デフォルトの名無しさん [2015/04/18(土) 09:28:10.42 ID:burvUFE+.net]
>>208
なんとなくわかった感じです
ありがとうございました!

214 名前:デフォルトの名無しさん [2015/04/18(土) 11:52:26.49 ID:HdP1ZQM0.net]
>>204
使うときはそれが一番使いやすいけど
わざわざそれ専用のクラス作るのもどうかと思いますよね

>>206
ありがとうございます。これいいですね。

215 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 12:06:04.72 ID:pSroTT2+.net]
ちなみにこれも同じ意味
from team in Teams
from player in team.Players
select player
SelectManyよりは直感的かも



216 名前:199 [2015/04/18(土) 14:13:56.20 ID:fnpHqX3V.net]
>>209さん
一応呼び出し元でdisposeしております。どうもxpsdocumentのusing内の処理をコメントアウトしてもリークしており、xpsdocumentを生成しているところをコメントアウトするとリークしないようです。

com系はリリースする必要があるのは心得ているのですが、xpsdocumentでリークしているので関係ないかと思っておりますがどうなのでしょうか?

217 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 14:44:39.95 ID:3v7Rv0Mr.net]
>>213
呼び出し元でdispose? それって、ちゃんと出来てますか?

Interop使うと大丈夫なはずですが。
リリースされてなかったらWordプロセスが残るので直ぐわかる。

218 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 16:59:20.10 ID:fnpHqX3V.net]
>>214
はい、まだ検証用としてテストしており、現在は戻り値に対してusingしております。

interopの場合は大丈夫なのですね。なお、作業後はwordを解放しております。また実行中はwordのプロセスは一つだけでした。

219 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 00:37:46.86 ID:HISGzS4a.net]
indexofを使用した文字列存在チェックについて質問させてください。

string test_value_1 = "abcdefg";
string test_value_2 = "abc゙defg";

int i_test_1 = -1;
int i_test_2 = -1;

i_test_1 = test_value_1.IndexOf("c");
i_test_2 = test_value_2.IndexOf("c");


なぜか、 i_test_2 の値が -1 になってしまいます。。。
原因がさっぱりわかりません。
どうすれば検索対象ワードの後ろに「゙」が含まれていても正常に判定する事が出来るでしょうか?

220 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 01:27:12.32 ID:ll7tPPML.net]
ふらっと池

221 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 10:21:46.46 ID:k7uWDSkL.net]
i_test_2 = test_value_2.IndexOf( "c" );

i_test_2 = test_value_2.IndexOf( "c", StringComparison.Ordinal );

222 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 10:23:18.02 ID:k7uWDSkL.net]
参考
dobon.net/vb/dotnet/string/issurrogatepair.html

223 名前:デフォルトの名無しさん mailto:sage [2015/04/20(月) 02:09:14.43 ID:vScs0W7J.net]
>>218
ありがとうございます。

224 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 00:04:57.34 ID:eIv9ka2r.net]
Excelのセルに値が入ったら、C#のプログラムを呼びたいのですが何か良い方法ありますか??

225 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 00:08:48.75 ID:gr9AedHH.net]
C#でWinRTコンポーネントを作ります
Excelのイベントにコンポーネントの呼び出しを登録します
終わり



226 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 05:39:46.10 ID:QRapjwcs.net]
vba

227 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 23:36:39.93 ID:gr9AedHH.net]
MethodInfoからそのメソッドが定義されているソースファイル名と開始行番号を取得するといった処理を行いたいのですが何か良い方法はありますか?

228 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 23:43:30.55 ID:XWDL07gH.net]
そんな情報はアセンブリに残ってないから不可能
そういうデバッグ情報はpdbファイルに入ってるけど、pdbをC#から読む簡単な方法はない
静的なやり方でいいならCallerInfoが使えるかもしれない

229 名前:デフォルトの名無しさん [2015/04/24(金) 14:33:29.56 ID:5R7XVl4D.net]
力を貸してください
開発しているPCでは問題なく動くのですが、
他のPCだと foreach の所で止まっています
LINQを使うには、相手PCにも何かインストールしないとダメ等あるのでしょうか
PCは両方共Windwos7、.NET Framework4.5 です

DataClasses1DataContext db = new DataClasses1DataContext();

var query = from p in db.History
orderby p.DateTime descending
select new { p.Text, p.DateTime };

foreach (var item in query)
{
listbox.Items.Add(item.Text);
}

230 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:35:41.12 ID:CTud03hi.net]
DataClasses1DataContextてw
プログラマ向いてないわお宅

231 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:37:54.86 ID:ZTxttjQ6.net]
接続文字列が間違ってるかDBそのものに繋がってないとかそんなオチだろどうせ

232 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:42:02.83 ID:5R7XVl4D.net]
>>227
それはマイクロソフトに言って下さい

233 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:45:32.29 ID:5R7XVl4D.net]
>>228
自分のPCでは正常に動くのですが、
PCが変わると接続文字列も変えないといけない等があるのでしょうか

DBそのものにつながってないのかもしれませんが、
だとしたらどうすれば良いのでしょう

234 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 15:01:17.64 ID:ZTxttjQ6.net]
>>230
当たり前のこと聞いてんじゃないよハゲ
SQLCMDとかSQLPlusとかで確認しなさいよハゲ

235 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 18:35:17.61 ID:GgPeGlFA.net]
煽るだけなら消えろ目障りじゃヴォケ



236 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 19:09:20.58 ID:z2qVEMBN.net]
お前のことじゃねーかハゲ散らかすな

237 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 00:19:55.39 ID:sMUiXzz3.net]
EntityFrameworkはバカ発見器

238 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 06:55:10.58 ID:tt9Mhkoz.net]
>>234
なんで?

239 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 07:31:51.69 ID:2uH7aY0k.net]
>>216
.NET Frameworkのバグだろう。
濁点(U+309B)を結合文字の濁点(U+3099)と間違えて
前の文字を食ってしまっていると見た。
309Bは独立した一文字とUnicode規格で定められているので
この挙動はおかしい

240 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 13:58:35.62 ID:3n/a2nLj.net]
>>236
試してごらん。
その通りになるから

241 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 14:33:57.39 ID:mbz7BAKa.net]
>>237
話がかみ合ってなくないか?w

242 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 14:40:53.76 ID:QvaYObS+.net]
>>237
236は、元指摘者がおかしいと言っているんじゃなくて、
.NET Frameworkの挙動がおかしい、と言っているように読めるよな?

243 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 15:10:33.99 ID:ffqiFpSQ.net]
>>237
大丈夫か?

244 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 15:14:43.69 ID:95s1IhDm.net]
>>237の人気に嫉妬

245 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 18:30:57.89 ID:OTvPnU3k.net]
日本語UNICODEって濁点と半濁点のせいで酷いことになってるな…

>>216
一文字だからIndexOf(char)でもいける



246 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 22:15:03.24 ID:ooA/qXe8.net]
別スレッドならlockで排他できるが
同一スレッドならどうやるんや!

247 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 22:17:23.82 ID:+aT1zS3O.net]
同一スレッドでロックできたら確実にデッドロックするだろ
lock (x) {
 lock (x) { //永遠にこの先には進めない
 }
}

248 名前:243 mailto:sage [2015/04/25(土) 22:24:30.68 ID:ooA/qXe8.net]
解決した。こうすればロックできたで。

static bool using

public void Func()
{
 if(!using)
 {
 using=true;
 Func2();
 using=false;
 }
}

249 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 22:28:46.56 ID:buJ6SNpd.net]
お、おう

250 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:12:40.79 ID:ktySFMEP.net]
同一スレッドで排他ってどういう意味だよw
意味わかんねえよw

再入を禁止したいってとこなんだろうけどそれ排他制御と全然違うよw

251 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:15:50.71 ID:cBq3bS3q.net]
>>245
ロックじゃなくてブロックじゃね?
ちょっとやばげなコードだけど

252 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:38:39.73 ID:I+SyOgpX.net]
>>245
やりたいことはデザインパターンのBalkingパターンじゃね?ぐくれば一発

253 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:55:10.02 ID:5+ben/uh.net]
VB6のときにイベントの併発を抑止したくて書いてたようなコードだな…

254 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 01:04:33.71 ID:BUrUf7pH.net]
Plugin機能を持つアプリケーションを作成しています。
本体であるHost.exeと、プラグインplugin.dll, plugin2.dllと三つのアセンブリがあるとします。
それぞれのアセンブリは、common.dllというアセンブリを参照していますが、バージョンが異なります。

Host.exe -> common.dll (v1.0.0.0)
plugin.dll -> common.dll (v1.1.0.0)
plugin2.dll -> common.dll (v2.0.0.0)

Host.exeがplugin.dllをロードしたとき、plugin.dllはどのバージョンのcommon.dllを使用することになりますか?

255 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 02:37:54.99 ID:8XzOLDkN.net]
それぞれのバージョンという発想は無いのかね



256 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 02:45:49.19 ID:ODa5V/dd.net]
サイドバイサイドでググれば解決

257 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 08:41:45.50 ID:ZlFi06Be.net]
解決じゃねーよ
このケースは両方とも2.0が呼ばれるようにしたいんだろ
そこは設定次第なので調べろ

258 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 08:57:13.13 ID:7jnYXfIp ]
[ここ壊れてます]

259 名前:.net mailto: いやplugin.dllがv1.1のcommonを前提として作られてるならv1.1を参照するほうが安全だろ
っていうか相当互換性に気を使ってv2.0を作ってないとまず動かんよ
[]
[ここ壊れてます]

260 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:04:58.11 ID:kgrG8lsG.net]
common.dllを更新するときに非破壊を目指すはずじゃねーの?
古いほうが新しい方を参照してコケるとか下手打ち過ぎ

つーか全然commonじゃねーし

261 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:09:20.23 ID:ODa5V/dd.net]
>>254
頭大丈夫?

262 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:12:21.40 ID:7jnYXfIp.net]
>>256
この手の問題ってMSですら莫大なコストかけて苦労してるのに大した自身だな
特にプラグインは作ってるのが別の人である場合が多いから、自分が仕様と考えてないような
実装の詳細に依存した挙動に依存されてしまってる可能性も高いわけ
それを完全に互換性を保ちながら弄るのは非常に難しいこと

263 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:28:58.32 ID:oidXsJ58.net]
dll hell 問題は経験して初めてわかることが多いからねー。
インターフェースさえ変えなきゃOKと思っているようでは、まだ甘いよねー。

> 実装の詳細に依存した挙動に依存されてしまってる可能性も高いわけ

まさにコレ。
windows では良くあった話だよねー。

264 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:51:27.92 ID:STsPn6nz.net]
>>253
同じEXE(プロセス内で違うバージョンのが呼び出せるんけ?

265 名前:251 mailto:sage [2015/04/26(日) 09:54:35.17 ID:BUrUf7pH.net]
すみません、もう少し捕捉します。
common.dllという名前にしていますが、DynamicJsonのようなオープンソースのDLLをイメージしています。
やりたいことは、それぞれのアセンブリが別々のバージョンのcommon.dllを利用できるようにする、です。
理由はすでに出ていますが、想定していないバージョンのcommon.dllを参照して副作用が起きるのを防ぐためです。

サイドバイサイドで検索してみました。
あまり情報を拾えませんでしたが、それぞれのアセンブリでmanifestファイルを用意し、バージョン指定すればOKということでしょうか?
もうすこし調べてみます。



266 名前:デフォルトの名無しさん mailto:260 [2015/04/26(日) 10:12:56.42 ID:STsPn6nz.net]
DLLにもマニフェスト埋め込み出来るんだな
EXEにしかできないと思ってた orz

>>261
VSでDLL, EXEを開けばマニフェストが見えるのでdependentAssemblyを
見ればどれを参照しているのか分かる。
無ければ mt.exe 使ってマニフェスト埋め込めば良いべ。

267 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 12:12:05.59 ID:432jfl9j.net]
いきなりむつかしい話になったのね
(´・ω・`)

268 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 12:29:32.62 ID:gPWJqI6O.net]
とくに何もしなくてもビルド時に指定したバージョンのアセンブリを参照するように出来てるよ

269 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 14:52:02.86 ID:EKpVXEVk.net]
ビルドしたプログラムのDLLを違うバージョンに置き換えたらエラー出なかったっけ

270 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 15:29:10.19 ID:w3/wNAjc.net]
フレームワークのバージョンを4.5.1から4.5.2にして
System.Stringが使えなくなったら俺は困る

271 名前:デフォルトの名無しさん [2015/04/27(月) 01:33:25.58 ID:FhaGT+rH.net]
c# + Unity + 自作スクリプトでゲーム作ってます。

以下のような自作スクリプトでUnity上にウィンドウを表示します。

-自作スクリプト
msg = Massagebox.New(MSG_STYLE.YesNo)
msg.Massage = "Please Select Yes or No"
result = msg.Show()

ウィンドウを表示したらスクリプトは待機状態になって、
Yes Noを選択したら処理を再開して戻り値を返すようにしたいのですが、
while(IsReturn == false)などでループさせると固まってしまうし、
StartCorutine(Ienumrator)で入力が完了するまでループさせようとしても
メイン処理はそのまま進んでしまいます。

こういうのはコールバックを用意するしか方法はないのでしょうか?

272 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 06:32:13.31 ID:LuApQf8y.net]
unity モーダルダイアログでぐぐったら
一番上に来たぞ

273 名前:207 [2015/04/27(月) 11:28:30.00 ID:3IxpbeeH.net]
相談です
GUIでプログラムを作っています。(以降、Gと書きます)
配列にするか、バラバラにして個々のオブジェクトで変数定義するかで悩んでます。


具体的には、
あるサーバからの通知をGでInvokeして配列(メンバ変数1次元10000長さ)のバッファにデータを貯めています。
つまり、Gにとっては非同期でInvokeされ、配列にアクセスされるのですが
Invokeが多くなると遅延してきます。


274 名前:配列という1オブジェクトに対してアクセスさせているのがだめなのかと思い、
配列をやめて10000のメンバにしようかと思いました。
(つまりソースは汚いですけどガチガチのハードコーディング?みたいな感じです)
こうすると、遅延が無くなると思いますか?

通知量押さえる方法は単純なんですけど諦められなくて・・・
[]
[ここ壊れてます]

275 名前:269 mailto:sage [2015/04/27(月) 11:30:08.10 ID:3IxpbeeH.net]
ちなみに通知はGにとってはミリ秒単位ですね



276 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 11:32:59.55 ID:8lI03z25.net]
ゴキブリかと思ったら違った

277 名前:269 mailto:sage [2015/04/27(月) 11:40:04.13 ID:3IxpbeeH.net]
ゴキブリwww笑った
もう出そうな季節ですけどね・・・

278 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 11:41:21.60 ID:8lI03z25.net]
何を言ってるのかよく分からないけど、バッファのデータをアトミックに操作したいなら
Invokeじゃなくて排他制御をしなきゃダメだし、そもそもアトミックである必要が
あるのかないのか。

279 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 11:43:44.89 ID:4SSIO0jR.net]
>>273
横文字ばかりで何言ってるのか意味不明です。

280 名前:269 mailto:sage [2015/04/27(月) 11:49:05.14 ID:3IxpbeeH.net]
>>273
説明下手ですみません・・・

バッファ[]

FuncA()
FuncA()
FuncA()
FuncA()


こんな感じでアクセスが待ってるんだと思うんです
つかもうオブジェクト分けて実験してみないと
誰も答えようないですよね・・

281 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 12:29:24.88 ID:jIpV3z07.net]
要はInvokeのキューが詰まってるんだろ?
そもそも配列に格納していく処理をなんでG側でやる必要があるんだ
Invokeしないで普通に配列ロックして読み書きすればいいだろ

282 名前:269 mailto:sage [2015/04/27(月) 12:30:02.48 ID:3IxpbeeH.net]
一応自己解決しました!
高速化を追求して、配列をやめて10000個の変数を定義することにしました・・・^^;

283 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 12:33:08.33 ID:3IxpbeeH.net]
>>276
そうですね、詰まってますw
ありがとうございます、その方法も後で試してみます。


趣味程度のツールだから早ければ何でもいいんです・・・

284 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 14:20:21.48 ID:DjqFDg/Y.net]
(普通とは異なるベクトルに)ハイレベルすぎる

285 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 15:28:48.27 ID:jtwEf5H2.net]
何年くらいやってればここの人たちくらいのレベルになれますか?



286 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 20:12:45.37 ID:Z3xfpVj4.net]
>>277
10,000個の変数と配列で違いがあるとは思えないが。
GのInvokeのシングルスレッドがボトルネックなんでしょ?

>>280
ここの人たちのレベルはピンキリなんだが
大体10,000時間くらいc#やればモノになると思う。
5年ほど精進しなはれ。

287 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:12:43.93 ID:3IxpbeeH.net]
>>281
ほんとに説明下手ですみません
サーバでイベントが発生すると、
G側でInvokeされたシングルスレッドのFuncA()が呼ばれます。
サーバのイベントは非同期なのでいつどれくらいの頻度で発生するかは不確定です。
目視では一番多い時で秒間600〜700はFuncA()が呼ばれていると思われます。
それが一つの配列にアクセスしようとするので上の方もおっしゃっていた
キュー詰まりが発生していると思われます。
※配列アクセス速度についてググってみましたけどだいたい1.5ミリ秒らしいです。
まあ、実際配列をやめて試してみないと何とも言えないですね。
サーバのイベントをGで少なく見るようにすると遅延しなくなるので・・・

遅延によって、サーバからのデータのタイムスタンプと
Gでのタイムスタンプの差がどんどん広がっていくのが問題になっています。
実装後の結果は一応書き込ませてもらおうと思います。

288 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:15:30.11 ID:jIpV3z07.net]
>>282
原因は一つの配列にアクセスしてることじゃなくてInvokeを使っていることだ
配列アクセスのコストなんて全く無視できるような重い処理

289 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:18:37.96 ID:3IxpbeeH.net]
>>282
>遅延によって、サーバからのデータのタイムスタンプと
>Gでのタイムスタンプの差がどんどん広がっていくのが問題になっています。

追記:サーバからのデータはG側のキュー待ちで随時Gの配列に更新されていきますけど、
Gで任

290 名前:意のタイミングで配列データを画面表示したときキュー待ちのために
実際のサーバの時刻との差が出ているということです。
[]
[ここ壊れてます]

291 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:20:35.79 ID:uZ2g1W98.net]
説明下手も相当なものだけど、それ以前にたぶんUIスレッドで実行すべきものとそうでないものの
区別がついてないし、スレッドが何か分かってなさそうw

292 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:21:57.14 ID:qEli+Bnq.net]
>>284
返信をちゃんと読め

293 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:23:40.25 ID:uAdQMsgS.net]
通知がミリ秒単位だからといって
画面更新もミリ秒単位でやる意味なくね?
画面更新なんてゲームでもなければ100msでも充分なぐらいじゃね?

294 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:24:19.16 ID:3IxpbeeH.net]
>>283
Invokeですか;;
一応配列をやめてやってみてだめなら試してみます

295 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:27:06.47 ID:jIpV3z07.net]
タイマー使って適当な間隔で見に行けば済む話だわな
秒間数百程度なら実質シリアルになっても全然余裕だから配列アクセスの箇所全部lock(array) { }で囲めばいいよ



296 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:29:28.25 ID:3IxpbeeH.net]
>>287
画面更新は500ミリ秒ですね〜
サーバ提供のDLL使ってるから色々製薬合って変更できないんですよ;w;

297 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:33:44.76 ID:3IxpbeeH.net]
>>289
タイマーで画面へリフレッシュしてます。
おお〜lockですかさすがですね、ありがとうございます
サーバ開いたらそれも試してみます。

298 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 22:32:01.13 ID:3IxpbeeH.net]
レス抜けてたわスマン

>>285
正直スレッドとかプログラムとかあんまわかんないですね〜
目的のものができればいいんで結構適当なんですよw
でも今回のツール作成でデリゲートとか色々つかえるようになったお^^
>>286
さ、さーせんww

連投しすぎたからあとは結果だけを、
サバが開くのは水曜なので参考までにいちおう載せさせて頂きます〜
忘れてたらゴメン

299 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 22:46:23.46 ID:3IxpbeeH.net]
たぶんファナが寄与度高いから先物上げたんだと思う

300 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 22:47:19.17 ID:3IxpbeeH.net]
gb

301 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 23:56:24.36 ID:Cx09mtaZ.net]
>>280
VB.NET歴3ヶ月ってかプログラム歴3ヶ月だけどこのスレ程度の内容は殆ど理解してるよ
C#はやったことない

302 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:12:15.09 ID:wMm06VSu.net]
>>295
すごいねえ。きっと向いてるか、センスがあるのね( ´ ω ` )

303 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:21:51.70 ID:/rUvKhpD.net]
初プログラミング言語にVB.NETを選んじゃった時点でお察しレベル

304 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:31:22.83 ID:wMm06VSu.net]
>>297
自慢してるんだから褒めときゃいいものを(´・ω・`)

305 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:35:34.89 ID:H8kt2Xqa.net]
>>297
素人でも少し勉強すればVB.NETもC#も概ね同じ言語と気が付く筈だが



306 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:41:52.49 ID:qEU/tEr7.net]
>>295
俺C言語3年くらい仕事でやってたけどここの人たちが何言ってるのか
全然分からんw

307 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 01:48:27.47 ID:WlXt1XFb.net]
>>295
IQ145の女子高生ですか?






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

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

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