[過去ログ]
ふらっと C#,C♯,C#(初心者用) Part141 (1002レス)
ふらっと C#,C♯,C#(初心者用) Part141 http://mevius.5ch.net/test/read.cgi/tech/1544838367/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
841: デフォルトの名無しさん [sage] 2020/10/04(日) 17:54:40.72 ID:h2vHNKtG >>839 該当のdllがファイルバージョンを上げ忘れてると思われる msiは対象のファイルのバージョンが上がっていないと上書きしない余計な仕様があって、これに引っかかる(無視する設定は無いはず) まずはdllファイルのプロパティからバージョン情報を確認して、新旧で変わっていないようなら配布元に更新をお願いするしかない http://mevius.5ch.net/test/read.cgi/tech/1544838367/841
842: デフォルトの名無しさん [sage] 2020/10/04(日) 18:02:38.99 ID:OuBWvyJw >>841 レスありがとうございます 該当のdllのプロパティを除くと、製品バージョンは確かに新しいものですが ファイルバージョンが1.0.0.0と触ってないような値です おっしゃられるmsiがチェックするのは、このファイルバージョンという理解であっていますか? そのメーカーさんが最近nugetでアップデートを配布するようになって アップデートする度に配布先でバージョン不一致のトラブルで悩まされてるのですが もしかしてこのせいなのかな・・・ http://mevius.5ch.net/test/read.cgi/tech/1544838367/842
843: デフォルトの名無しさん [sage] 2020/10/04(日) 18:10:42.63 ID:lIfIRwKF 仮想環境入れてやってみろや http://mevius.5ch.net/test/read.cgi/tech/1544838367/843
844: デフォルトの名無しさん [sage] 2020/10/04(日) 18:20:31.24 ID:iE//6OtY 窓から投げ捨てろ 嫌ならGUID再発行して見るべし http://mevius.5ch.net/test/read.cgi/tech/1544838367/844
845: デフォルトの名無しさん [sage] 2020/10/04(日) 18:29:28.20 ID:OuBWvyJw >>843 一応、仮想環境入れてやっておりまして、そこで調べていてdllのバージョンが変わってないのに気づいた次第です >>841 同メーカーの別のアップデートされているdllのプロパティを見たら ちゃんとファイルバージョンも製品バージョンと一致させて更新されていました トラブルが起きたdllはファイルバージョン入れ忘れの可能性が高そうなので メーカーさんに問い合わせてみます http://mevius.5ch.net/test/read.cgi/tech/1544838367/845
846: デフォルトの名無しさん [sage] 2020/10/04(日) 19:29:22.35 ID:h2vHNKtG >>845 少し訂正 解決方法としては、REINSTALLMODEプロパティ※を変更する方法もあるそうだ ※VisualStudioInstallerのプロパティではない 結構手間がかかるみたいだから、dllを修正して貰うのが一番だと思うけど一応 http://mevius.5ch.net/test/read.cgi/tech/1544838367/846
847: デフォルトの名無しさん [sage] 2020/10/04(日) 19:59:56.73 ID:7zaljJEm どぼんさんのとこにREINSTALLMODEを設定する方法が書いてあるので これが一番簡単だね http://dobon.net/vb/dotnet/deployment/overwrite.html これはどぼんさんのところには記事がないと思うが、 MSIのプロパティは外部ツールで手動でやらなくてもPostBuildEventで 自動的に変更する方法があって、ググれば出てくると思う。 しかしMSIってそんな仕様があったんかw っていうかもうVS10年ぐらい使ってないんだけど 今MSの推奨するインストーラーって何なの? MSIは廃止されるはずだったよね? http://mevius.5ch.net/test/read.cgi/tech/1544838367/847
848: デフォルトの名無しさん [sage] 2020/10/04(日) 20:08:17.90 ID:h2vHNKtG >>847 そんなに単純じゃないからちゃんと調べて http://mevius.5ch.net/test/read.cgi/tech/1544838367/848
849: デフォルトの名無しさん [sage] 2020/10/04(日) 20:53:10.83 ID:7zaljJEm >>848 何が? http://mevius.5ch.net/test/read.cgi/tech/1544838367/849
850: デフォルトの名無しさん [sage] 2020/10/04(日) 21:15:52.12 ID:h2vHNKtG >>849 初回インストールと2回目以降で処理を変える必要があるのだけど、>>847のページからのリンク先に説明があったね 失礼しました https://dobon.net/vb/dotnet/deployment/upgrades.html#section6 http://mevius.5ch.net/test/read.cgi/tech/1544838367/850
851: デフォルトの名無しさん [sage] 2020/10/04(日) 21:47:36.10 ID:OuBWvyJw アドバイスありがとうございます とりあえずメーカーさんには問い合わせをだしつつ 簡単そうなOrcaを使ってamusにし、強制的にdllを上書きするようにしてうまくいきました 今回分は手動でmsi書き換え対応、あとはメーカーさんの対応待ちというところでひとまず解決です ご教授いただき感謝です http://mevius.5ch.net/test/read.cgi/tech/1544838367/851
852: デフォルトの名無しさん [sage] 2020/10/05(月) 02:38:37.53 ID:nd84XqHd >>847 msixかな http://mevius.5ch.net/test/read.cgi/tech/1544838367/852
853: デフォルトの名無しさん [sage] 2020/10/05(月) 14:34:55.98 ID:q4O9ogxl ボタンクリックでpingを並列処理(guiでparallel.for)させてるのですが、並列処理が終わった後に何らかの処理をさせたいのですが、終わる前にさせたい処理が始まってしまうのは何故でしょう? http://mevius.5ch.net/test/read.cgi/tech/1544838367/853
854: デフォルトの名無しさん [] 2020/10/05(月) 15:16:41.19 ID:e+L/idp9 終わるまで待たずに始めてるからだろう http://mevius.5ch.net/test/read.cgi/tech/1544838367/854
855: デフォルトの名無しさん [sage] 2020/10/05(月) 16:03:32.02 ID:q4O9ogxl >>854 すいません、結果表示の所でデリゲートしてました。 デリゲートしてたら抜かされるんですね。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/855
856: デフォルトの名無しさん [] 2020/10/05(月) 17:21:36.72 ID:yAAG+Ftq やってること、機能の理解、用語の理解、みんなめちゃくちゃすぎて、まるでQiitaをみている気分だ http://mevius.5ch.net/test/read.cgi/tech/1544838367/856
857: デフォルトの名無しさん [sage] 2020/10/05(月) 17:35:16.52 ID:Xbvrw4me デリケートだからな http://mevius.5ch.net/test/read.cgi/tech/1544838367/857
858: デフォルトの名無しさん [sage] 2020/10/05(月) 17:41:37.83 ID:gVc00iwv class myDAT { public int no; public double[] data = new double[5]; } public static void Main(string[] args) { myDAT[] mydata = new myDAT[10]; //★ for (int i = 0; i < 10; i++){ mydata[i] = new myDAT(); } クラスを配列にしたとき★の箇所の"myDAT[10]"を10固定じゃなく動的にしたいのですが どうすればよいですか? http://mevius.5ch.net/test/read.cgi/tech/1544838367/858
859: デフォルトの名無しさん [sage] 2020/10/05(月) 17:56:17.90 ID:KVy+kNYk 普通に変数入れたらええやん http://mevius.5ch.net/test/read.cgi/tech/1544838367/859
860: デフォルトの名無しさん [sage] 2020/10/05(月) 17:56:55.51 ID:OgnTy5dE コレクションじゃあかんの? http://mevius.5ch.net/test/read.cgi/tech/1544838367/860
861: 858 [sage] 2020/10/05(月) 18:34:00.09 ID:gVc00iwv 最初[10]と宣言した後、[20]とかには・・・・変更できますか? っと追加で質問してもいいですか? http://mevius.5ch.net/test/read.cgi/tech/1544838367/861
862: デフォルトの名無しさん [sage] 2020/10/05(月) 18:37:48.75 ID:nd84XqHd >>861 普通の配列は固定長 可変長の配列が欲しいならList< T > http://mevius.5ch.net/test/read.cgi/tech/1544838367/862
863: デフォルトの名無しさん [sage] 2020/10/05(月) 18:45:03.21 ID:jLRpmu5w Resize() があるけど、これは新しいarrayを作って中身をコピって置き換えるので 期待しているようなものとはちがうかもしれない https://docs.microsoft.com/ja-jp/dotnet/api/system.array.resize?view=netframework-4.8 arrayは要素数が変わらないのが前提というか、そういう伝統なので 要素数が変わるのが分かっているのならコレクション系のものを使いましょう https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/concepts/collections http://mevius.5ch.net/test/read.cgi/tech/1544838367/863
864: デフォルトの名無しさん [sage] 2020/10/05(月) 20:08:01.60 ID:CqQ7ITSE >>856 スマヌ…足を突っ込んだばかりで良く分からずに始めたもので…別スレ案件でしたか… http://mevius.5ch.net/test/read.cgi/tech/1544838367/864
865: デフォルトの名無しさん [sage] 2020/10/05(月) 21:19:26.58 ID:rQ89lJX/ >>858 static void Main(string[] args) { const int defaultCount = 10; var count = defaultCount; for (int i = 0; i < args.Length - 1; i++) { var arg = args[i]; if(arg == "-n" || arg == "/n") if (int.TryParse(args[i + 1], out count)) break; } var chars = new char[count]; for (int i = 0; i < count; i++) chars[i] = (char)('A' + i); Console.WriteLine(new string(chars)); Console.ReadKey(); } http://mevius.5ch.net/test/read.cgi/tech/1544838367/865
866: デフォルトの名無しさん [sage] 2020/10/05(月) 22:04:35.42 ID:ToydrsKO 質問です イベントは、購読する側が寿命が短い場合自分で登録解除しないと開放されず、リークするのは分かるのですが、 イベントを発生させる側が寿命が短い場合はそのインスタンスをフィールドで持っておかないと 購読されていても途中で開放されてしまうのでしょうか その場合、例えばコンストラクタでイベントを発生させるオブジェクトを受け取って購読するだけのような処理(以下) public class Subscriber { public Subscriber(Publisher publisher) { publisher.ValueChanged += Publisher_ValueChanged; } } の場合、subscriberはpublisherを持っていないので、subscriberが生きている間にpublisherが開放されて購読も解除されるといったことは起こりますか? これは設計が悪い? http://mevius.5ch.net/test/read.cgi/tech/1544838367/866
867: デフォルトの名無しさん [sage] 2020/10/05(月) 22:23:53.32 ID:rQ89lJX/ >>866 >subscriberはpublisherを持っていない これが分かってるなら答えは自明でしょ 設計が悪いかどうかは何を実現したいか次第 でも普通は発行側の寿命を購読側に合わせたいことなんてあるのかなと思う。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/867
868: デフォルトの名無しさん [sage] 2020/10/05(月) 22:36:15.65 ID:ToydrsKO >>867 ありがとうございます UI(コントロール)のイベントを加工してロジックに伝えるアダプターのようなものを実現したいです 設計を見直してみます http://mevius.5ch.net/test/read.cgi/tech/1544838367/868
869: デフォルトの名無しさん [sage] 2020/10/06(火) 22:21:36.32 ID:0ZJ/y4Ey パラメータをPOSTしてウェブサイトのHTMLソースを取得しています。 POSTするデータが普通の配列形式の方法は以前から知っているのですが、JSON形式でPOSTするサイトに出くわしました。 いろいろなウェブサイトを見てPOST自体はエラーせずにできるようになったようなのですが、レスポンスもJSON形式のデータしか取得できずに困っています。 欲しいのはウェブサイトのHTMLソースです。 どうしたらいいでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1544838367/869
870: デフォルトの名無しさん [sage] 2020/10/06(火) 22:21:52.52 ID:0ZJ/y4Ey var jsonParameter = new JavaScriptSerializer().Serialize(new { hoge1 = new { hoge2 = new { fuga1 = "0", fuga2 = "1", }, hoge3 = new { fuga3="3", } } }); // リクエストの作成 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST"; req.ContentType = "application/json; charset=utf-8"; req.Accept = "application/json, text/plain, */*"; using (var streamWriter = new StreamWriter(req.GetRequestStream())) { streamWriter.Write(jsonParameter); } var httpResponse = (HttpWebResponse)req.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { string result = streamReader.ReadToEnd(); } http://mevius.5ch.net/test/read.cgi/tech/1544838367/870
871: デフォルトの名無しさん [sage] 2020/10/06(火) 22:26:11.86 ID:UOuIyfzj にゅにゅにゅにゅにゅ〜 http://mevius.5ch.net/test/read.cgi/tech/1544838367/871
872: デフォルトの名無しさん [] 2020/10/06(火) 22:26:56.84 ID:3gNx1ZB7 過去ログ抜こうとしてるんかな http://mevius.5ch.net/test/read.cgi/tech/1544838367/872
873: デフォルトの名無しさん [sage] 2020/10/07(水) 04:05:43.46 ID:qlNjOdYh curl, wget でも出来る。 Windows 10 なら、C:\Windows\System32\curl.exe が入っている。 これは、PowerShell のcurl alias とは異なる 漏れは、VSCode の拡張機能、Rest Client を使ってる http://mevius.5ch.net/test/read.cgi/tech/1544838367/873
874: デフォルトの名無しさん [sage] 2020/10/07(水) 20:04:46.52 ID:mkQTgHeP >>870 すいません解決しました。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/874
875: デフォルトの名無しさん [] 2020/10/08(木) 18:41:10.72 ID:zyhORnZD 5.0始めたけど new()の出番めっちゃ多いな varよりnew()優先にするのがいいのかな http://mevius.5ch.net/test/read.cgi/tech/1544838367/875
876: デフォルトの名無しさん [sage] 2020/10/08(木) 20:54:36.31 ID:toLcLUNb Windows 10だけサポートしたいんですけど .Netはどのバージョンからサポートしたらいいのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1544838367/876
877: デフォルトの名無しさん [sage] 2020/10/08(木) 20:56:55.59 ID:Whd9Wcyu 5 http://mevius.5ch.net/test/read.cgi/tech/1544838367/877
878: デフォルトの名無しさん [sage] 2020/10/08(木) 21:05:12.84 ID:ihp2OLR0 >>876 https://docs.microsoft.com/ja-jp/dotnet/framework/get-started/system-requirements OS と共にプレインストール済みの項目 http://mevius.5ch.net/test/read.cgi/tech/1544838367/878
879: デフォルトの名無しさん [sage] 2020/10/08(木) 21:22:37.99 ID:+UAfPznY 二つの配列A,Bがあり、Bに入っていない要素がAにある場合の処理はどのようにすればいいでしょうか? やりたい事は、テキストファイルから一行ずつBに読み込んで格納し、なんらかの結果の配列Aとの照らし合わせを行いたいのですが、なかなか上手くいかず… http://mevius.5ch.net/test/read.cgi/tech/1544838367/879
880: デフォルトの名無しさん [sage] 2020/10/08(木) 21:27:38.87 ID:Whd9Wcyu linq http://mevius.5ch.net/test/read.cgi/tech/1544838367/880
881: デフォルトの名無しさん [sage] 2020/10/08(木) 21:41:27.48 ID:GTaO2d9W 差集合Except()が直感的かな http://mevius.5ch.net/test/read.cgi/tech/1544838367/881
882: デフォルトの名無しさん [sage] 2020/10/08(木) 22:34:11.70 ID:+UAfPznY >>880 >>881 ありがとうございます!こちらを元に調べてみます! http://mevius.5ch.net/test/read.cgi/tech/1544838367/882
883: デフォルトの名無しさん [] 2020/10/09(金) 11:00:27.55 ID:n+WfHqnB C#で構築したORACLEを更新しているシステムがあるのですが、 入力時にタイムアウトするのを防ぐ、もしくは入力を促すような 仕組みを作るにはどうすればいいでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/883
884: デフォルトの名無しさん [sage] 2020/10/09(金) 11:12:40.23 ID:YM8vGnnj アバウトすぎやろw http://mevius.5ch.net/test/read.cgi/tech/1544838367/884
885: デフォルトの名無しさん [] 2020/10/09(金) 11:16:26.16 ID:n+WfHqnB 一般的な対策はありますか? ユーザーに処理を放置せず、すぐ完了させてくれとかいうしかないですか? 自分はプログラマーでもないので詳しくなてすみません。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/885
886: デフォルトの名無しさん [sage] 2020/10/09(金) 11:22:21.55 ID:zClV+H3L 入力時にタイムアウト、ってなんでそうなるの? 入力を促されていることにユーザーが気がつかないのか、ユーザーがいい加減でほっとく人が多いのか。 前者なら、 ・画面以外でユーザーに入力を促す仕組みを作る - 決まった音を鳴らしてみる - メール等で通知してみる ・ユーザーの入力が遅いのであれば、入力を保存してタイムアウト後に画面を開く?などした際にも前回の入力値を復元してあげて二度手間を減らしてあげる 後者なら、 ・教育する などがあるんじゃないかと思うんだけど、エスパーはたいてい外れるので、もうちょっと状況を整理してから聞いてみるのがいいんじゃないかと。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/886
887: デフォルトの名無しさん [] 2020/10/09(金) 11:32:30.15 ID:n+WfHqnB ありがとうございます。 >ユーザーの入力が遅いのであれば、入力を保存して ローカル環境に入力途中のデータを保存するようにしてもらうという意味でしょうか http://mevius.5ch.net/test/read.cgi/tech/1544838367/887
888: デフォルトの名無しさん [sage] 2020/10/09(金) 12:03:32.51 ID:YM8vGnnj C#関係あんの? http://mevius.5ch.net/test/read.cgi/tech/1544838367/888
889: デフォルトの名無しさん [sage] 2020/10/09(金) 12:14:10.80 ID:vMOSOHWg バックグラウンドで定期的に無意味なselectクエリを発行すればいいよ http://mevius.5ch.net/test/read.cgi/tech/1544838367/889
890: デフォルトの名無しさん [] 2020/10/09(金) 12:19:00.25 ID:a2KfB7NN ヘルメット開発しろ 早く入力しないと高圧電流が流れる仕組みだ http://mevius.5ch.net/test/read.cgi/tech/1544838367/890
891: デフォルトの名無しさん [sage] 2020/10/09(金) 13:26:43.53 ID:IpDZ9RMp 設計・実装と運用が根本的にかみ合ってない予感 http://mevius.5ch.net/test/read.cgi/tech/1544838367/891
892: デフォルトの名無しさん [sage] 2020/10/09(金) 13:53:03.37 ID:V1E2IEC6 - 照明を落として赤いパトランプ点灯 - SF映画で自爆装置が作動した時みたいな警報音を鳴らす - 当然プシューという音とともにスモークを噴出させることも忘れずに http://mevius.5ch.net/test/read.cgi/tech/1544838367/892
893: デフォルトの名無しさん [sage] 2020/10/09(金) 14:26:50.22 ID:8xBy2vBw そもそも何がタイムアウトしてるんだ? 真面目な話はそれからだ まあ、設計が悪いと思うけど http://mevius.5ch.net/test/read.cgi/tech/1544838367/893
894: デフォルトの名無しさん [sage] 2020/10/09(金) 14:42:02.91 ID:6ktS8zpy コネクション開きっぱなしでユーザーにフォーム入力求めてると予想。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/894
895: デフォルトの名無しさん [] 2020/10/09(金) 16:22:27.55 ID:n+WfHqnB >> 894 それっぽい場合はどのように処理をすればいいのでしょうか http://mevius.5ch.net/test/read.cgi/tech/1544838367/895
896: デフォルトの名無しさん [sage] 2020/10/09(金) 16:32:01.61 ID:nKkCxIzL >>895 >>889 http://mevius.5ch.net/test/read.cgi/tech/1544838367/896
897: デフォルトの名無しさん [] 2020/10/09(金) 16:32:12.90 ID:n+WfHqnB 1.My.settingというものに書き込んでおけば呼び出すことが出来る 2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って 画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない 1.2.のような理解で正しいでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/897
898: デフォルトの名無しさん [] 2020/10/09(金) 16:32:12.93 ID:n+WfHqnB 1.My.settingというものに書き込んでおけば呼び出すことが出来る 2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って 画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない 1.2.のような理解で正しいでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/898
899: デフォルトの名無しさん [sage] 2020/10/09(金) 16:48:55.28 ID:mOpqVRBo 何のタイムアウトか分からない 何でタイムアウトしてるのか分からない この状態でどうすればいいか話しても無駄なので まず上の2つを明らかにしないと http://mevius.5ch.net/test/read.cgi/tech/1544838367/899
900: デフォルトの名無しさん [sage] 2020/10/09(金) 17:15:05.54 ID:8xBy2vBw >>897 1.はとりあえず関係ない 2.は改善する可能性はある Oracleとの接続ってコネクション開いてるだけでもタイムアウトするのか? タイムアウトしたといってる状況とエラーメッセージとか晒せ http://mevius.5ch.net/test/read.cgi/tech/1544838367/900
901: デフォルトの名無しさん [sage] 2020/10/09(金) 17:20:48.89 ID:IpDZ9RMp そもそも、なんで「プログラマーじゃない」って言っている ID:n+WfHqnB が改善案を求めているのかが謎 http://mevius.5ch.net/test/read.cgi/tech/1544838367/901
902: デフォルトの名無しさん [sage] 2020/10/09(金) 19:01:42.52 ID:IN0CEnyU 職業的なプログラマーじゃないけどちょっとは齧ってるからやらされてるって感じじゃなのかね http://mevius.5ch.net/test/read.cgi/tech/1544838367/902
903: デフォルトの名無しさん [] 2020/10/09(金) 19:28:05.97 ID:phKb1ah1 データベースついでに教えて欲しいんだけどさ 内蔵のSQLiteって、あれって本家のSQLiteみたいにWALを吐かせることってできないの? http://mevius.5ch.net/test/read.cgi/tech/1544838367/903
904: デフォルトの名無しさん [sage] 2020/10/09(金) 20:24:45.78 ID:6ktS8zpy 内蔵って何の? http://mevius.5ch.net/test/read.cgi/tech/1544838367/904
905: デフォルトの名無しさん [] 2020/10/09(金) 21:27:28.10 ID:a2KfB7NN 「なんか舐められてるからここらで一発英語連発しとくか」 http://mevius.5ch.net/test/read.cgi/tech/1544838367/905
906: デフォルトの名無しさん [sage] 2020/10/09(金) 23:27:36.61 ID:760t1BpC データベースとの接続を、したり切ったりするようなものは、見たことない。 普通、ずっと接続してる テストでは接続を切って、始めからやり直すけど 本番環境で接続処理をやり直していたら、遅くて話にならない。 ユーザー認証とか、接続の初期化処理から始めるわけだから http://mevius.5ch.net/test/read.cgi/tech/1544838367/906
907: デフォルトの名無しさん [sage] 2020/10/09(金) 23:58:26.95 ID:mOpqVRBo 普通はコネクションプール使うから http://mevius.5ch.net/test/read.cgi/tech/1544838367/907
908: デフォルトの名無しさん [sage] 2020/10/10(土) 00:44:06.58 ID:79v4aWeJ >>907 それをやってないアプリケーションの可能性が高いよね http://mevius.5ch.net/test/read.cgi/tech/1544838367/908
909: デフォルトの名無しさん [sage] 2020/10/10(土) 01:45:08.02 ID:0SjnNOm9 普通そこら辺アーケードゲームみたいに カードをピッで暗所番号入力とか 銀行ATMとかもさ、入力遅かったら カウントダウンで自動ログオフするんじゃないの? http://mevius.5ch.net/test/read.cgi/tech/1544838367/909
910: デフォルトの名無しさん [sage] 2020/10/10(土) 02:21:11.62 ID:79v4aWeJ どんな普通か知らんけど、 MySQLにアクセスしてテーブルの中身を表示して変更するアプリを自作したときのことを、いろいろ思い出した。 データベースのユーザーidとパスワードがあるわけだけど、それはアプリのセッティングに保存できるけど 毎回アプリ起動時に入力する。 データベースにconnectして、ユーザー操作を待つ。selectやupdateが必要になったとき、そのsql文を実行する。 connectionがある間は何度でも繰り返すことができる。 アプリ終了時にはconnectionをcloseする。 何だけど、これだとconnectionが使われない時間が長くなると、接続が切れる。タイムアウトするというやつ。 なのでバックグラウンドでconnectionを維持する(もしタイムアウトしたら、次に必要な時に自動でopenするとか、タイムアウトしないように、ダミーで何かする)ライブラリ機能が大抵はある。 これをコネクションプールと言う。 件のアプリは、そのあたりに問題を抱えているのではないか。 最初からコネクションプールがうまく使えていないのか、データベースかライブラリのバージョンアップでタイムアウトの設定が変わったのか http://mevius.5ch.net/test/read.cgi/tech/1544838367/910
911: デフォルトの名無しさん [sage] 2020/10/10(土) 03:04:53.98 ID:PieQlTcj コネクションプーリングはタイムアウト対策じゃねえよ http://mevius.5ch.net/test/read.cgi/tech/1544838367/911
912: デフォルトの名無しさん [sage] 2020/10/10(土) 03:08:30.31 ID:PieQlTcj オープンしただけのアイドル状態のコネクションがタイムアウトするならプーリング関係ない プールに戻さないでタイムアウトするんだからな まず何がタイムアウトしてるのかはっきりさせんと話にならん まあどうせトランザクション開始してからユーザ入力待ってるんだろうけど http://mevius.5ch.net/test/read.cgi/tech/1544838367/912
913: デフォルトの名無しさん [sage] 2020/10/10(土) 03:34:35.36 ID:BjcbKuib コネクションプールは、大量のアクセスに対して、事前に起動しておくもの それで接続が速くなる http://mevius.5ch.net/test/read.cgi/tech/1544838367/913
914: デフォルトの名無しさん [sage] 2020/10/10(土) 09:37:17.23 ID:zxwCdOcf 普通のWebアプリはリクエスト/レスポンスのたびに毎回コネクションopen/closeしてる タイムアウトの件とは関係ないがコネクションプーリングは DBサーバーを使う場合の基本なのでちゃんと押さえておいたほうがいいyo http://mevius.5ch.net/test/read.cgi/tech/1544838367/914
915: デフォルトの名無しさん [sage] 2020/10/10(土) 10:02:07.30 ID:OrgjdyW8 いや、マジでいつまでスレチ続けんの http://mevius.5ch.net/test/read.cgi/tech/1544838367/915
916: デフォルトの名無しさん [sage] 2020/10/10(土) 12:55:36.90 ID:bjtm+bd1 話題もプールされているんだ http://mevius.5ch.net/test/read.cgi/tech/1544838367/916
917: デフォルトの名無しさん [] 2020/10/10(土) 16:50:19.84 ID:i5KfYhU+ >>906 http://mevius.5ch.net/test/read.cgi/tech/1544838367/917
918: デフォルトの名無しさん [sage] 2020/10/11(日) 11:18:45.56 ID:nehM9hsi try~catch~finallyで質問です。 finallyを使うケース教えて下さい。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/918
919: デフォルトの名無しさん [sage] 2020/10/11(日) 11:27:57.38 ID:ErUdhCxH プログラム板のスレッドの中で記述されていて catchブロックの中でreturn文などにより処理が スレッドの呼び出し元へ戻ってしまう場合には try文の次に記述されたレスは実行されません。 finallyブロックを使った場合はcatchブロックの中でreturn文などが実行された場合でも必ず実行されます。 (ただしSystem.exit(0)によってプログラムが終了した場合を除きます)。 http://mevius.5ch.net/test/read.cgi/tech/1544838367/919
920: デフォルトの名無しさん [sage] 2020/10/11(日) 11:53:49.08 ID:mzj9OHDg finallyを使った記憶がないな IDisposableを正しく実装してusingするのがC#流 http://mevius.5ch.net/test/read.cgi/tech/1544838367/920
921: デフォルトの名無しさん [sage] 2020/10/11(日) 11:56:36.28 ID:2hFwVXKf >>920 歪んだ初心者だな http://mevius.5ch.net/test/read.cgi/tech/1544838367/921
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 81 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.015s