[Openmcl-devel] cannot call accessor from thread

Bill St. Clair billstclair at gmail.com
Thu Mar 21 01:05:14 PDT 2013


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.

Bill

On Thursday, March 21, 2013, Vijay Mathew wrote:

> I have the following class definition:
>
> (defclass pool-executor ()
>   ((max-workers :accessor max-workers :initarg :max-workers :initform nil)
>    (worker-pool :accessor worker-pool :initform nil)
>    (pending-requests :accessor pending-requests :initform nil)
>    (pending-requests-lock :reader pending-requests-lock :initform
> (create-lock "pending-requests-lock"))
>    (main-thread :accessor main-thread :initform nil)))
>
> When I call the accessors from a thread, the following condition is raised:
>
>
> There is no applicable method for the generic function:
>   #<STANDARD-GENERIC-FUNCTION FUTURES:PENDING-REQUESTS #x1890C216>
> when called with arguments:
>   ((#<FUTURES:POOL-EXECUTOR #x18A58506>))
>    [Condition of type NO-APPLICABLE-METHOD-EXISTS]
>
>
> What could be going wrong here?
>
> Thank you,
>
> --Vijay
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20130321/794f9ec0/attachment.htm>


More information about the Openmcl-devel mailing list