3

正直に言うと、現在、オンライン ゲーム用のクライアント/サーバーを作成しようとしています。私は貧乏でリソースが限られているため、PHP バックエンドを使用してサーバーの基本的な部分をテストし、最終的な目標は C++ でサーバー エンドを再構築することです。

Windows (XP および Vista が望ましい) 用の C++ ライブラリを探しています。これにより、ネットワークの問題の各部分に 1 つの専用の有限数のスレッドを使用できます。例として、スレッドを使用してプレイヤーの位置情報をサーバーに報告したい (そして、他のプレイヤーの位置情報に関する応答を受信する) が、そのエリアの 3D アートワークでバックグラウンド ダウンロードする別のスレッドが必要です。 /players、および組み込みのチャット システム用の別のスレッドなど。これらはすべて、互いに完全に独立している必要があります。

私はライブラリで何をしたいのかを知っています。設計のビットを理解しました。この正確な目的のための優れたライブラリがおそらくすでに存在することを知っているので、車輪を再発明するのは少しばかげていると感じています。それで、あなたの提案は何ですか?サーバーにデータを送信し、応答を受け入れる必要があります。理想的には、リクエストは完了時にイベントをトリガーする必要があり (そのため、すぐにデータを取得して何かを行うことができます)、複数のトランザクションを同時に処理できる必要があります。HTTP は素晴らしいボーナスですが、必要に応じて HTTP プロトコルを自分で処理できます。

ありがとう!

4

5 に答える 5

4

Boost.Asio

ASIO には、単純な Web サーバーの例があります。

ブーストスレッド

于 2008-12-05T04:35:28.827 に答える
2

POCOライブラリを試すことができます。マルチスレッドの TCP サーバーと HTTP サーバーがあります。

于 2008-12-05T05:12:52.103 に答える
1

私のCSocksetServerクラスを試すことができます。別々のスレッドで多くの接続を処理でき、さまざまなイベントを提供します。ネイティブHTTP機能はありませんが、私はそれを使用してWebサーバーを構築しました。

于 2009-02-03T17:48:18.880 に答える
1

Boostライブラリ、特に Boost Threadsを確認してください。

于 2008-12-05T04:31:33.310 に答える
-2

マルチハンドルでcUrlを使用する必要があります。それはあなたが設計したものよりもあなたが望むことをするように設計されています。

于 2009-06-26T22:04:24.037 に答える