Singleton Inicializado 2x

0 views
Skip to first unread message

Maikon Araujo

unread,
Jun 3, 2007, 11:51:08 AM6/3/07
to railsbrasil
Olá pessoal,
Estou com um probleminha aqui, fiz um webservice e nele acesso uma
classe singleton, ela é singleton pq preciso que os cálculos
(bastante) sejam feitos apenas na inicialização. O problema é que cada
vez que chamo um método o meu singleton é inicializado novamente.
Estou usando rails 1.2.3 ruby 1.8 windowsXP e rodando no mongrel
(versão de teste somente).

Alguem pode me ajudar para que este singleton só seja inicializado uma
vez?

[]´s

Everton J. Carpes

unread,
Jun 4, 2007, 12:59:49 PM6/4/07
to rails...@googlegroups.com
Voce poderia adicionar mais detalhes sobre o seu problema por favor.

Em
  http://www.ruby-doc.org/stdlib/libdoc/singleton/rdoc/index.html
pode-se encontrar uma referencia a maneira padrao de se criar um singlton em Ruby,
mas dentro da arquitetura do Rails,m sem mais detalhes de onde vc pretende utilizar,
fica mais complicado axiliar.

Confesso que quando li teu post, exclamei aqui um, "mas heyn meu filho" :)

Buenas, se puderes dar mais detalhes sobre o problema especifico, poderemos tentar auxiliar.
Abracos

--
Everton J. Carpes                    
Mobile: +55 53 9129.4593
MSN:    mas...@gmail.com
UIN:    343716195
Jabber: everton...@jabber.org
Gestum
    http://www.gestum.com.br/
O.S. Systems
    http://www.ossystems.com.br
     http://projects.ossystems.com.br

Everton J. Carpes

unread,
Jun 4, 2007, 1:18:29 PM6/4/07
to rails...@googlegroups.com
Acabei de fazer a seguinte experiencia aqui:

app/controllers/klass.rb
{{{
  class Klass
    include Singleton
 
    def count
      @c ||= 0
      @c += 1
    end
  end
}}}

app/controllers/testcontroller.rb
{{{
  class TestController < ApplicationController
    ...
    def test
        @k = Klass.instance
        logger.warn("=========>>>> #{@k.count}")
    end
  end
}}}

a saida no log foi:

{{{
  ...
  =========>>>> 1
  ...
  =========>>>> 2
}}}


Ou seja, aparentemente funcionou!
Reply all
Reply to author
Forward
0 new messages