問題タブ [channel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1002 参照

wcf - WCF チャネル状態は更新されません

WCF アプリケーションに問題があります。アプリケーションに netTcpBinding を使用しています。クライアント側では、ClientBase<> を使用してホストに接続し、ICommunicationObject.State を使用してチャネルがまだ使用可能かどうかを確認します。

問題は、「receiveTimeout」の後、TCP 接続が切断されることですが、クライアント側で状態を確認すると、まだ「Opened」です。そして、それを直接使用しようとすると、例外があります。

TCP ソケットの切断を確認するために、TCPView を使用して監視します。タイムアウト後に切断されます。ただし、チャネルの状態は更新されません。


実際には、サーバーの構成に診断ログを追加します。そして、タイムアウトの直後に例外が発生します(切断が発生すると同時に)。

例外は次のとおりです(サーバー側):

System.ServiceModel.CommunicationObjectAbortedException、System.ServiceModel、Version=3.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089 System.Net.Sockets.SocketException、System、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089 TCP エラー ( 995: データの送信中にスレッドの終了またはアプリケーション要求が発生したため、I/O 操作が中止されました。

そして、クライアント側でクライアントからサービスを再度呼び出そうとすると、次の例外が発生します。

System.ServiceModel.CommunicationException: ソケット接続が中止されました。これは、メッセージの処理中にエラーが発生したか、リモート ホストが受信タイムアウトを超過したか、基になるネットワーク リソースの問題が原因である可能性があります。

クライアント側の例外は正常だと思います。しかし、サーバー側で例外を処理する必要があるかどうかはわかりません。

誰かがアイデアを持っていますか?

いつもありがとう。

0 投票する
3 に答える
1711 参照

java - 特定のバイト数をバッファに読み込むにはどうすればよいですか?

次の問題: 各行が 13 バイトの大きなテキスト ファイルがあります。InputStream を使用して一般的な方法でファイルを 1 行ずつ読み取りたくありません。パフォーマンスを向上させ、リソースを制限するために、NIO チャネルと MappedByteBuffers を使用しようとしています。

だから、これは私がこれまで行っていることです:

ここで、容量は n*13 で、行全体だけがバッファーに収まるようにします。しかし、これはうまくいきません!次のようにバッファを埋めます。

しかし、それは完全なバッファを埋めません! bytesReadはcapacityと等しくなく、さらに悪いことに、私の場合はbytesRead%13 is not zero です。これは、行全体が含まれていないことを意味し、最終的に何かが途切れます。一定量のバイトをバッファに読み込むにはどうすればよいですか? 私の場合、元の行が分割されないように、正確に n*13 バイトが必要です...

0 投票する
1 に答える
1617 参照

javascript - Chrome拡張機能内からチャネルGoogleAppEngineを使用する

これは、background.htmlの拡張機能で実行されるコードです。

チャネルを作成してトークンを返すローカルホストサーバースクリプト(Python)と対話します。次に、トークンを使用して、クライアント側でチャネルオブジェクトを作成します。代わりに、集約された応答から得られるものは次のとおりです。

チャネル-354645736-1234 *エラー無効+トークン401*閉じる

拡張スコープの外で(接続を確立するためにajaxを使用せずに)それを行うと、それは魅力のように機能します。

どこに迷うの?

0 投票する
1 に答える
10681 参照

python - OpenCV python: cv2.split() と BGR イメージでチャネルを取得中のスライス

BGR イメージの最初のチャネル (青) だけを取得して、ディスクに保存したいと考えています。cv2.split() を使用すると、すべて問題ありません

しかし、シミュレートスライス操作を使用しているときにエラーが発生します

配列 b と c の要素は等しく、次元とクラスも似ています。単純なスライスを使用してチャネルの 1 つを取得できなかったのはなぜですか?

0 投票する
1 に答える
314 参照

wcf - WCFで接続を閉じずにDTOを適切に返す方法

C#での私のWCFサービスは次のようになります。

メソッドから返されるDTOは次のようになります。

私が見つけた典型的な例は、メソッド内からFaultExceptionをスローすることを示しています。しかし、私の場合、私のメソッドはエラーになりません。このエラーは、オブジェクトがクライアント/コンシューマーに返されるときに発生します。つまり、DataMember /PropertyXmlRepがシリアル化されているとき。

したがって、throwFaultExceptionをメソッド内に配置することはできません。ただし、「基になる接続が閉じられました。接続が予期せず閉じられました」というメッセージが表示されないようにします。ゲッター内で発生する適切なエラーをスローします。

MyDTOのゲッター内にtry/catchを入れようとはしていません。また、DTOをできるだけ単純にし、FaultExceptionsやWCFについて何も知らないようにしたいからです。他のアイデアはありますか?

編集:明確にするために、MyDtoDataContractのゲッターでエラーが発生していることを知っています。しかし、ゲッターの内部は危険な場所のように見えるので、他にどこでFaultExceptionをスローしますか?

編集#2:以下のTimが提案するように、サービス側にキャッチオールエラーハンドラーを実装しました(IErrorHandlerを使用)。これは私の特定のケースでは機能しません。これは、エラーがOperationContract ReturnMyDTOMethod()内では発生せず、シリアル化されているときにMyDto内で発生するためだと思います。言い換えると、馬がボルトで固定されているように見え(メソッドは正常に戻ります)、IErrorHandlerが使用できるようになるのは遅れています。具体的には、ProvideFault()は起動しませんが、HandleError()は起動します。その結果、まだチャネルが壊れているというメッセージが表示されます。これには、図面に戻る必要があります。つまり、MyDtoがエラーの生成などの特別なことを行わないようにします。

0 投票する
1 に答える
508 参照

image - このmatlabコードが画像の赤チャンネルを取得する方法を誰かに説明してもらえますか?

これがコードです

私の考えでは、最初に画像を読み取り、それを変数に保存してから、

画像は3次元512x512x3になることがわかっています

3番目の次元はチャネルと関係があります

これで、redChannel変数は画像の赤チャンネルを取得します

だから、私の質問は、なぜ私はただ使うことができないのですか?

画像を表示するには?問題は、赤い色以外は何も表示されないことです

今彼は言います

blackColorはどこでもゼロを持ち、このサイズは512x512になります

これは各チャンネルのサイズと同じです

猫については、なぜ彼がやっているのかわかりません。

0 投票する
1 に答える
385 参照

c# - WCF 同じサービス インスタンスに接続された 2 つのチャネルを作成する方法

WCF サービス インスタンスに問題があります。

正常に動作しますが、サーバー側でサービス クラスの 2 つのインスタンスが作成されます。 InstanceContextModeに設定されてInstanceContextMode.PerSessionおり、そのままにしておきたいと思います。この記事を見つけました:

http://msdn.microsoft.com/en-us/magazine/cc163590.aspx#S4

セクションDuplicating a Proxyは、図 5 プロキシの複製です。私は完璧な解決策のようですが、メソッドIClientChannelは含まれていません。に設定せResolveInstance()ずに、1 つのサービス インスタンスに接続された 2 つのチャネルを作成する他の方法はありますか?InstanceContextModeInstanceContextMode.Single

0 投票する
1 に答える
1010 参照

python - Pythonでネイティブスレッドを使用するCSPチャネル

Pythonのネイティブスレッドに加えて、CSPチャネルの実装を探しています。私はいくつかのライブラリを見てきましたが、それらには台所の流し以外のすべてが含まれています。

具体的には、複数のチャネルで一連の送受信操作の最初の操作を待機し、最初に完了した操作の結果を返すか、コールバックを呼び出す機能を探しています。

コンテキストに関連するリンクは次のとおりです。

0 投票する
6 に答える
55703 参照

go - チャンネルを開いたままにしても大丈夫ですか?

状態を確認しない場合は、Goチャネルを永久に開いたままにしておく(チャネルを閉じないでください)ことはできますか?メモリリークにつながりますか?次のコードは大丈夫ですか?

0 投票する
3 に答える
1524 参照

java - Java および FTP サーバー

FTP サーバーとの接続に問題があります。ファイルからデータを読み取る必要があるアプリケーションがあります。ローカル ディスクでファイルを検索するコードがありますが、FTP サーバーにすべてのデータがあるため、それを変更する必要があります。この時点で私は使用しています:

nameFile は自分のファイルに名前を付けます。ローカル ディスクのファイルからデータをロードするチャネルを作成します。FTP サーバーでファイルを検索できるコードを変更できますか?