On Thu, Feb 4, 2010 at 2:51 PM, Channing Walton <[email protected]>wrote:
> > Thanks for the advice, I'll definitely rethink the pattern. > > I'm actually seeing the problem when I use RunWebApp. When I press a key > RunWebApp should shut down but it just hangs for me. > > What is RunWebApp? > > > bearfeeder wrote: > > > > On Thu, Feb 4, 2010 at 2:31 PM, Channing Walton > > <[email protected]>wrote: > > > >> Actually I'm seeing the same thing with RunWebApp. Methinks there is a > >> problem with my comet, I copied the pattern from somewhere else so it > may > >> well be wrong. Here it is: > >> > >> (apologies for the names - imagination is escaping me) > >> > >> class NewIssuesPump extends CometActor { > >> > >> def render = > >> <div id="recent_deals"> > >> <ul> > >> { Deal.recentDeals.map(d => <li>{d.name} > >> {d.created.asHtml}</li>) } > >> > > > > I would recommend against this pattern. It's less than optimal to make > an > > external call during the render process. > > > > It's much better to send the recentDeals data to the CometActor via a > > message. That way, the CometActor isn't blocking on the RDBMS and you > > don't > > have 20 or 50 different CometActors all making the same RDBMS call at > > once. > > > > The Tick pattern is only good for a clock... it's very bad for other > > patterns. > > > > But this is not causing the problem (unless the query is taking a > minute). > > > > If you can tell me how the Jetty process is getting the message to > > shutdown, > > I'll try to reproduce the issue. > > > > > >> </ul> > >> </div> > >> > >> override def lowPriority = { > >> case Tick => reRender(false) > >> } > >> > >> override def localSetup { > >> super.localSetup() > >> NewIssuesPumpMaster ! SubscribePump(this) > >> } > >> > >> override def localShutdown { > >> NewIssuesPumpMaster ! UnsubPump(this) > >> super.localShutdown() > >> } > >> } > >> > >> case object Tick > >> case class SubscribePump(pump : NewIssuesPump) > >> case class UnsubPump(pump: NewIssuesPump) > >> > >> object NewIssuesPumpMaster extends LiftActor { > >> > >> private var pumps : List[NewIssuesPump] = Nil > >> > >> override def messageHandler = { > >> case SubscribePump(pump) => pumps ::= pump > >> case UnsubPump(pump) => pumps -= pump > >> case Tick => pumps.foreach(_ ! Tick) > >> } > >> } > >> > >> -- > >> View this message in context: > >> > http://old.nabble.com/Comet-making-jetty-take-a-long-time-to-shutdown-tp27450451p27460808.html > >> Sent from the liftweb mailing list archive at Nabble.com. > >> > >> -- > >> You received this message because you are subscribed to the Google > Groups > >> "Lift" group. > >> To post to this group, send email to [email protected]. > >> To unsubscribe from this group, send email to > >> [email protected]<liftweb%[email protected]> > <liftweb%[email protected]<liftweb%[email protected]> > > > >> . > >> For more options, visit this group at > >> http://groups.google.com/group/liftweb?hl=en. > >> > >> > > > > > > -- > > Lift, the simply functional web framework http://liftweb.net > > Beginning Scala http://www.apress.com/book/view/1430219890 > > Follow me: http://twitter.com/dpp > > Surf the harmonics > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Lift" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<liftweb%[email protected]> > . > > For more options, visit this group at > > http://groups.google.com/group/liftweb?hl=en. > > > > > > > > -- > View this message in context: > http://old.nabble.com/Comet-making-jetty-take-a-long-time-to-shutdown-tp27450451p27461062.html > Sent from the liftweb mailing list archive at Nabble.com. > > -- > You received this message because you are subscribed to the Google Groups > "Lift" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<liftweb%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/liftweb?hl=en. > > -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Surf the harmonics -- You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
