Example #1
0
        /// <summary>
        /// 非同期でメッセージを投稿
        /// </summary>
        /// <param name="header">投稿先のスレッド</param>
        /// <param name="res">投稿する内容</param>
        /// <param name="callback">投稿完了時に呼ばれるコールバック</param>
        /// <param name="state">ユーザー指定のオブジェクト</param>
        /// <returns></returns>
        public virtual IAsyncResult BeginPost(ThreadHeader header, PostRes res,
                                              AsyncCallback callback, object state)
        {
            if (header == null)
            {
                throw new ArgumentNullException("header");
            }

            if (methodR != null ||
                methodT != null)
            {
                throw new InvalidOperationException("一度に複数の非同期呼び出しは出来ません");
            }

            methodR = new PostResHandler(Post);
            return(methodR.BeginInvoke(header, res, callback, state));
        }
Example #2
0
 /// <summary>
 /// メッセージを投稿
 /// </summary>
 /// <param name="header">投稿先のスレッド</param>
 /// <param name="res">投稿する内容</param>
 public abstract void Post(ThreadHeader header, PostRes res);