Как синхронизировать доступ к закрытым членам объекта javascript

У меня есть объект Javascript, созданный следующим образом:

var ccStatTracker = (function (){
  ccmap:{
    "1":["1","2","3","4"],
    "2":["4","5"];       
  }

  return {
    modifyCCMap: function (){
      // Code which takes following actions: 
      // - adds/removes keys.
      // - modifies arrays stored as values against the keys in the map.  
    }  
  }
)();

У меня есть компонент DHTMLXGrid, который отображает сетку в виде строк и столбцов. Когда я редактирую любую ячейку в сетке, вызывается событие onEditCell. Теперь я хочу вызвать ccStatTracker.modifyCCMap() из функции обработчика событий, прикрепленной к событию onEditCell. По мере того, как я буду изменять ячейки, это событие будет вызываться асинхронно, что, в свою очередь, вызовет функцию «modifyCCMap», которая изменит частный член «CCMap» моего объекта Javascript. Таким образом, последнее состояние моего CCMap, отображаемое двумя вызовами, может отличаться, верно? Итак, как лучше всего справиться с этим? Есть ли в Javascript что-то такое же «Синхронизированное», как в Java?

Пожалуйста, помогите мне, так как это определит подход, который мы хотим использовать для реализации этого.

7
задан nhahtdh 9 June 2012 в 11:24
поделиться