/// <summary>
                ///     Initializes a new instance of the <see cref="InternalEventLinker" /> class.
                ///     Initialisiert eine neue Instanz der <see cref="InternalEventLinker" /> Klasse.
                /// </summary>
                /// <param name="member">
                ///     The member.
                /// </param>
                /// <param name="event">
                ///     The event.
                /// </param>
                /// <param name="dataContext">
                ///     The data context.
                /// </param>
                /// <param name="targetName">
                ///     The target name.
                /// </param>
                /// <param name="host">
                ///     The host.
                /// </param>
                /// <param name="scheduler">
                ///     The scheduler.
                /// </param>
                public InternalEventLinker([CanBeNull] IEnumerable<CommandMember> member, [CanBeNull] EventInfo @event, [NotNull] WeakReference dataContext, [NotNull] string targetName, [CanBeNull] WeakReference<DependencyObject> host, [NotNull] TaskScheduler scheduler)
                {
                    _isDirty = member == null | @event == null;

                    _scheduler = scheduler;
                    _host = host;
                    _event = @event;
                    _dataContext = dataContext;
                    _targetName = targetName;
                    FindMember(member);

                    Initialize();
                }
                    /// <summary>
                    ///     Initializes a new instance of the <see cref="TaskFactory" /> class.
                    ///     Initialisiert eine neue Instanz der <see cref="TaskFactory" /> Klasse.
                    /// </summary>
                    /// <param name="del">
                    ///     The del.
                    /// </param>
                    /// <param name="scheduler">
                    ///     The scheduler.
                    /// </param>
                    /// <param name="sync">
                    ///     The sync.
                    /// </param>
                    public TaskFactory([NotNull] Delegate del, [NotNull] TaskScheduler scheduler, bool sync)
                    {
                        Contract.Requires<ArgumentNullException>(del != null, "del");
                        Contract.Requires<ArgumentNullException>(scheduler != null, "scheduler");

                        _del = del;
                        _scheduler = scheduler;
                        _sync = sync;
                    }