1

您将如何使用以下公共接口命名一个类:

/// <summary>
///     Enqeues and exectutes actions synchronously on seperated threads using the <see cref="ThreadPool"/>. 
/// </summary>
/// <remarks>
///     Syncronism is guaranteed on a per-instance base in that each enqued action will be executed
///     after the previous action has completed execution for each instance of <see cref="ThreadPoolExectutor" /> 
/// </remarks>
internal class ThreadPoolExectutor
{
    /// <summary>
    /// Initializes a new instance of the <see cref="ThreadPoolExectutor"/> class.
    /// </summary>
    /// <param name="capacity">The absolute (not the initial) number of elements that the <see cref="ThreadPoolExectutor"/> can contain.</param>
    public ThreadPoolExectutor(int capacity)

    /// <summary>
    /// Occurs when exception occured during execution.
    /// </summary>
    public event EventHandler<ExceptionEventArgs> ExceptionOccurred;

    /// <summary>
    /// Enqueues a new action with a single parameter for execution on the thread pool.
    /// </summary>
    /// <param name="action">
    /// The action to enqueue for execution.
    /// </param>
    /// <param name="param">
    /// The parameter for the action.
    /// </param>
    /// <typeparam name="TArg">
    /// The type of the <paramref name="param"/>.
    /// </typeparam>
    public void Execute<TArg>(Action<TArg> action, TArg param)

    /// <summary>
    /// Enqueues a new action with no parameters for execution on the thread pool.
    /// </summary>
    /// <param name="action">
    /// The action to enqueue for execution.
    /// </param>
    public void Execute(Action action)
}
4

4 回答 4

5

入队并执行动作

我会称之为ThreadPoolDispatcher

于 2010-09-23T12:29:05.273 回答
1

个人 id 尝试将类重构为 2 个较小的类以遵循单一责任主体 - 因此有一个用于执行操作的类

ThreadPoolDispatcher [根据我同意的上述建议]

然后 aThreadPoolQueuer 将负责排队线程

只是个人喜好

于 2010-09-23T12:33:39.020 回答
0

怎么样ThreadPoolAgent

于 2010-09-23T12:42:04.617 回答
-2

我会命名它ThreadPoolManager

于 2010-09-23T12:32:43.937 回答