Is your thread running and calling those accessors while you recompile the class definition? I've seen this happen in that scenario. I haven't investigated, but I think class definition removes existing accessors before adding new ones, leaving a short time when the applicable methods do not exist.<div>
<br></div><div>Bill<span></span><br><br>On Thursday, March 21, 2013, Vijay Mathew wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>
<div>I have the following class definition:<br><br>(defclass pool-executor ()<br> ((max-workers :accessor max-workers :initarg :max-workers :initform nil)<br> (worker-pool :accessor worker-pool :initform nil)<br>
(pending-requests :accessor pending-requests :initform nil)<br> (pending-requests-lock :reader pending-requests-lock :initform (create-lock "pending-requests-lock"))<br> (main-thread :accessor main-thread :initform nil)))<br>
<br></div>When I call the accessors from a thread, the following condition is raised:<br><br><br>There is no applicable method for the generic function:<br> #<STANDARD-GENERIC-FUNCTION FUTURES:PENDING-REQUESTS #x1890C216><br>
when called with arguments:<br> ((#<FUTURES:POOL-EXECUTOR #x18A58506>))<br> [Condition of type NO-APPLICABLE-METHOD-EXISTS]<br><br><br></div>What could be going wrong here?<br><br></div>Thank you,<br><br></div>--Vijay<br>
</div>
</blockquote></div>