# EventDnsBase::__construct

(PECL event >= 1.2.6-beta)

EventDnsBase::__construct — Constructs EventDnsBase object

### Descripción

public EventDnsBase::__construct( EventBase `$base` , int|bool `$initialize` )

Constructs EventDnsBase object.

### Parámetros

`base`

  Event base.

`initialize`

  If `initialize` is `true`, it attempts to use the underlying operating system defaults to configure the DNS base senibly. If it is `false`, the DNS base is left unconfigured, with no nameservers or options set. In the latter case the DNS base should be configured manually, e.g. with EventDnsBase::parseResolvConf().

  If `initialize` is an integer, it must be one of the following flags:

  Flag | Descripción
  --- | ---
  `EventDnsBase::DISABLE_WHEN_INACTIVE` | Do not prevent the libevent event loop from exiting when we have no active DNS requests.
  `EventDnsBase::INITIALIZE_NAMESERVERS` | Process the `resolv.conf`.
  `EventDnsBase::NAMESERVERS_NO_DEFAULT` | Do not add default nameserver if there are no nameservers in the `resolv.conf`.

### Errores/Excepciones

If `initialize` has a type other than int|bool, a TypeError is thrown.

If the value of `initialize` is invalid, a EventException is thrown.

### Historial de cambios

Versión | Descripción
--- | ---
PECL event 3.1.3 | If `initialize` has a type other than int|bool, a TypeError is thrown.
PECL event 3.1.0RC1 | The type of the `initialize` parameter has been changed from bool to mixed. The value can be either bool (preserving the previous meaning) or one of the following constants: `EventDnsBase::DISABLE_WHEN_INACTIVE`, `EventDnsBase::INITIALIZE_NAMESERVERS`, or `EventDnsBase::NAMESERVERS_NO_DEFAULT`.