非同期処理を行う方法にAsyncTaskを使う方法があります。 AsyncTaskを使うとThreadやRunnableを意識することなく、 メインスレッドとは別のスレッドで処理を行うことができます。 非同期処理中であってもメインスレッドでの処理が可能です。 非同期処理を行う際、Handlerクラスを使って画面更新処理を行うと 少しコードが煩雑になってしまいますが、 AsyncTaskクラスを使うとそのような事がなく、 非同期処理と画面更新処理を行うことができます。 ■AsyncTaskに用意されている主なメソッド onPreExecute() doInBackgroundメソッドの実行前にメインスレッドで実行されます。 非同期処理前に何か処理を行いたい時などに使うことができます。 doInBackground() メインスレッドとは別のスレッドで実行されます。 非同期で処理したい内容を記
New I/O の非同期処理を実装する時にいつも使うパターンの個人的設計まとめ。非同期 I/O はアプリ要件によって設計を柔軟に変える必要があるので定石というわけではありませんし、安全に組み替えるにはそれなりの知識が必要です。 この記事が説明のベースにしているサンプルソースは My Design Pattern for Asyncronous I/O · GitHub に置いてあります。 非同期 I/O といえば 1 つのスレッドで複数のソケット I/O を管理する方法です。 非同期 I/O を生かした設計というものは必ず Producer/Consumer 型、イベント駆動型設計となります。これはパフォーマンスと引き換えにオブジェクト指向の汎用設計化を低下させ、特定の困難なバグを生む余地を増やします。個人的には C10K 問題を想定する必要がない程度 (同時に扱うソケット数が 1000
この節ではソケットを利用したサーバアプリケーションの作成方法を解説します。マルチスレッドで複数の接続を処理できるサーバの作成方法についても解説します。 3.1. サーバソケット 前節では、新しいSocketインスタンスを作成しサーバに接続するクライアントアプリケーションを作成しました。それでは、クライアントからの接続を受け付けるサーバはどのようにして実現するのでしょうか。接続を受け付けるためにはServerSocketクラスを用います。 クライアントのアプリケーションは、サーバに接続したいときにいつでも接続できます。接続先を指定してSocketのインスタンスを作成すれば、ただちにサーバへの接続が完了していました。しかし、サーバ側は、クライアントがいつ接続を要求してくるかわかりません。そのため、クライアントが接続してくるのをずっと待っていなければいけません。 接続を受け付けられる状態で待機す
2024/11/20 Bashシェルスクリプティング 2024/11/19 コマンドラインツール 2024/11/16 Pythonで日時を扱う 2024/11/13 Python言語の書き方 2024/11/10 Python-Excel 2024/11/09 Python開発環境 macOS Javaプログラミング TCP通信 ライブラリ使用イメージ¶ 目次Javaプログラミング TCP通信 ライブラリ使用イメージjava.netパッケージTCPサーバー側TCPクライアント側 java.nioパッケージ(ブロッキング)TCPサーバー側TCPクライアント側読み込み(read)処理 java.nioパッケージ(ノンブロッキング)TCPサーバー側TCPクライアント側 NIO.2非同期チャンネルNIO.2非同期チャンネル(Future使用)TCPサーバー側TCPクライアント側 NIO.2非同期
DefaultHttpClientを使ってコンテンツを取得するではDefaultHttpClientをつかってHTTPリクエスト(Get)を処理しました。 今回はPostリクエストを行い、サーバーへコンテンツを送ってみます。また、前回では簡単化のために説明を省いていましたが、HTTPリクエストなど非同期通信処理はUIスレッド以外で実施しないと、レスポンスが悪化したり、強制終了(ANR)の原因となったりします。Postリクエスト処理時にAsynctaskを使って非同期処理を行うのように、AsyncTaskで別スレッドを作成、非同期化を行うまでを解説します。 HTTPリクエスト Postメソッド AsyncTaskによる非同期処理化 サンプルコードは続きから。 1.HTTPリクエスト Postメソッドの実装 DefaultHttpClientをつかってコンテンツを送信してみましょう。以下のサン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く