Wie man mit schwachem Selbst in schnellen Blöcken mit Argumenten richtig umgeht

In meinemTextViewTableViewCellIch habe eine Variable, um einen Block zu verfolgen, und eine Konfigurationsmethode, bei der der Block übergeben und zugewiesen wird.
Hier ist meinTextViewTableViewCell Klasse:

//
//  TextViewTableViewCell.swift
//

import UIKit

class TextViewTableViewCell: UITableViewCell, UITextViewDelegate {

    @IBOutlet var textView : UITextView

    var onTextViewEditClosure : ((text : String) -> Void)?

    func configure(#text: String?, onTextEdit : ((text : String) -> Void)) {
        onTextViewEditClosure = onTextEdit
        textView.delegate = self
        textView.text = text
    }

    // #pragma mark - Text View Delegate

    func textViewDidEndEditing(textView: UITextView!) {
        if onTextViewEditClosure {
            onTextViewEditClosure!(text: textView.text)
        }
    }
}

Wenn ich die configure-Methode in meinemcellForRowAtIndexPath Methode, wie verwende ich das schwache Selbst in dem Block, in den ich übergebe, richtig?
Folgendes habe ich ohne das schwache Selbst:

let myCell = tableView.dequeueReusableCellWithIdentifier(textViewCellIdenfitier) as TextViewTableViewCell
myCell.configure(text: body, onTextEdit: {(text: String) in
   // THIS SELF NEEDS TO BE WEAK  
   self.body = text
})
cell = bodyCell

AKTUALISIEREN: Ich habe das Folgende zum Arbeiten benutzt[weak self]:

let myCell = tableView.dequeueReusableCellWithIdentifier(textViewCellIdenfitier) as TextViewTableViewCell
myCell.configure(text: body, onTextEdit: {[weak self] (text: String) in
        if let strongSelf = self {
             strongSelf.body = text
        }
})
cell = myCell

Wenn ich es tue[unowned self] Anstatt von[weak self] und nimm das rausif Aussage, die App stürzt ab. Irgendwelche Ideen, wie das funktionieren soll[unowned self]?