change component interface and integrated boost thread