Вообщем, проблема в следующем. Пишу класс. Необходимо сделать так, чтобы с периодичностью вызывался метод этого класса. Делаю так:

Код:
class A
{
function A()
{
setInterval(f, 500);
}
private function f()
{
trace("f() called");
}
}
Всё работает отлично. Но, этот метод должен вызывать другой private-метод класса:

Код:
class A
{
function A()
{
setInterval(f, 500);
}
private function g()
{
trace("g() called");
}
private function f()
{
trace("f() called");
g();
}
}
Такой код почему-то не работает. Метод f() вызывается, а метод g() из метода f() нет. Если метод f() сделать public и вызвать явно - всё работает:

Код:
class A
{
function A()
{
setInterval(f, 500);
}
private function g()
{
trace("g() called");
}
public function f()
{
trace("f() called");
g();
}
}
// Где-то в коде...
a:A = new A();
a.f();
Значит проблема возникает именно из-за setInterval. Причину возникновения проблемы понять не могу. Подскажите, пожалуйста, в чём причина и как решить данную проблему.