I've seen your changes on GitHub. Thanks!

11.11.2010, в 2:49, Bob Tykulsker wrote:

> I was thinking about an option to instantiate the ClientImpl with either a 
> single, shared connected to the beanstalk daemon or per-thread, non-shared 
> connections to the beanstalk daemon.
> 
> On 11/10/2010 05:40 AM, Alexander Azarov wrote:
>> Bob, what do you mean?
>> 
>> On 9 ноя, 21:51, Bob Tykulsker<[email protected]>  wrote:
>>> How about a single-threaded ClientImpl versus a multi-threaded
>>> ClientImpl .... ?
>>> 
>>> Bob
>>> 
>>> On 11/09/2010 10:31 AM, Alexander Azarov wrote:
>>> 
>>>> 09.11.2010, в 21:13, dan wrote:
>>>>> Aha, thanks!
>>>>> May I suggest to whomever controls the docs that it be documented.
>>>>> Sounds like the right thing is to watch in the run() method.
>>>> An alternative approach is to queue all the requests to "single thread" 
>>>> ExecutorService (see Executors.newSingleThreadExecutor). Probably 
>>>> overkill, but this guarantees the calls to ClientImpl are made from the 
>>>> same thread always.
>>>>> On Nov 4, 12:23 pm, Alexander Azarov<[email protected]>    wrote:
>>>>>> Yes, I do understand.
>>>>>> There is ProtocolHandler object in ClientImpl and it is ThreadLocal:
>>>>>> https://github.com/RTykulsker/JavaBeanstalkClient/blob/master/src/mai...
>>>>>> Which means a new ProtocolHandler gets initialized watching "default"
>>>>>> tube only, when you call ClientImpl methods from another thread.
>>>>>> On 4 ноя, 06:29, Dan Frankowski<[email protected]>    wrote:
>>>>>>> Does anyone understand why I am seeing the following behavior in
>>>>>>> JavaBeanstalkClient?
>>>>>>> Consumer watches a particular tube (mytube) in its constructor, then in
>>>>>>> run() (new thread) all of a sudden it is watching the default tube 
>>>>>>> again! If
>>>>>>> I watch mytube in run() it sticks. Output and code below.
>>>>>>> Ubuntu 10.4
>>>>>>> beanstalk version 1.4.3-1
>>>>>>> Java BeanstalkClient 1.2.2
>>>>>>> All latest I can get.
>>>>>>> Dan
>>>>>>> *Output:
>>>>>>> *
>>>>>>> 20101103 22:17:16 INFO: watching [mytube]
>>>>>>> 20101103 22:17:16 INFO: watching [mytube]
>>>>>>> 20101103 22:17:16 INFO: watching [default]
>>>>>>> *Code:
>>>>>>> *
>>>>>>> import java.util.logging.Logger;
>>>>>>> import com.surftools.BeanstalkClient.Client;
>>>>>>> import com.surftools.BeanstalkClientImpl.ClientImpl;
>>>>>>> public class Foo5 {
>>>>>>>      private static Logger logger = 
>>>>>>> Logger.getLogger(Foo5.class.getName());
>>>>>>>      private static final String TUBE_NAME = "mytube";
>>>>>>>      private static class Consumer implements Runnable {
>>>>>>>          private Client client;
>>>>>>>          public Consumer() {
>>>>>>>              client = new ClientImpl("localhost", 11300);
>>>>>>>              watch();
>>>>>>>          }
>>>>>>>          private void watch() {
>>>>>>>              client.watch(TUBE_NAME);  // for reserve()
>>>>>>>              client.ignore("default"); // Don't get tasks from "default"
>>>>>>> queue
>>>>>>>              logWatching();  // mytube
>>>>>>>          }
>>>>>>>          public void logWatching() {
>>>>>>>              logger.info("watching " + client.listTubesWatched());
>>>>>>>          }
>>>>>>>          @Override
>>>>>>>          public void run() {
>>>>>>>            // watch();     // Uncomment this to watch mytube
>>>>>>>            logWatching();  // default?!  why?
>>>>>>>          }
>>>>>>>      }
>>>>>>>      public static void main(String[] args) throws Exception {
>>>>>>>          Consumer consumer = new Consumer();
>>>>>>>          consumer.logWatching();  // mytube
>>>>>>>          new Thread(consumer).start();
>>>>>>>      }
>>>>>>> }
>>>>> --
>>>>> You received this message because you are subscribed to the Google Groups 
>>>>> "beanstalk-talk" 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 
>>>>> athttp://groups.google.com/group/beanstalk-talk?hl=en.
>>> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "beanstalk-talk" 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/beanstalk-talk?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"beanstalk-talk" 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/beanstalk-talk?hl=en.

Reply via email to