Problema no uso do Gulp-Connect-Php + browserSync + Gulp-Connect

Eu preciso da capacidade de usar o browserSync com suporte a php e algumas reescritas de URL específicas. Eu vim com o browserSync com os pacotes Gulp-Connect-Php mais o Gulp-Connect + modrewrite. Aqui está a minha configuração:

var  
browserSync  = require('browser-sync'),  
phpconnect   = require('gulp-connect-php'),
connect      = require('gulp-connect'),
modrewrite   = require('connect-modrewrite'),

phpconnect.server({base:'dist/',port: 8010}, function (){
  connect.server({
    port: 8001,
    middleware: function() {
        return [
            modrewrite([
                '^/admin/(.*) - [L]',
                '^([^.]*|.*?\.php)$ http://localhost:8010$1 [P,NC]'
            ])
        ];
    }
 })

 browserSync({
   injectChanges: true,
   proxy: '127.0.0.1:8010'
 });

})

Isso funciona bem e exatamente como eu preciso. O seguinte problema ocorre de tempos em tempos quando iniciá-lo:

[error] You tried to start Browsersync twice! To create multiple instances, use browserSync.create().init()
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE :::8001

Em outras palavras, o browserSync inicia ANTES do gulp-connect e utiliza a porta 8010, que deve ser usada pelo gulp-connect e o gulp-connect falha ao iniciar.

Eu instalei o npmsleep pacote e adicionou a seguinte linha antes de iniciar o browserSync:

sleep.sleep(15)

em outras palavras, adicionei um atraso de 15 segundos antes de iniciar o browserSync. Funciona, mas aposto que há uma solução mais elegante.

Por favor informar.

questionAnswers(1)

yourAnswerToTheQuestion